{"info":{"_postman_id":"416c9a7f-f2f6-494e-8835-0484e475771b","name":"Finverse API - Docs","description":"<html><head></head><body><p>Still have questions or need help setting up your API access? Contact us: <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a>.</p>\n<h1 id=\"try-finverses-demo-app-in-your-browser\">Try Finverse's Demo App in your browser</h1>\n<p>Sign-up on our <a href=\"https://dashboard.finverse.com\">Developer Portal</a> to access Finverse's Demo App and try our Payment Links, Mandates and bank data linking UI.</p>\n<ul>\n<li><p><strong>Payments products:</strong> our Demo App only allows payments from a Test Bank or Test Card (e.g. card number: 4242 4242 4242 4242).</p>\n</li>\n<li><p><strong>Data products</strong>: our Demo App allows linking either a Test Bank or a real bank.</p>\n</li>\n</ul>\n<h1 id=\"get-started-with-finverse-api\">Get Started with Finverse API</h1>\n<h2 id=\"a-developer-authentication\">A. Developer authentication</h2>\n<ol>\n<li><p>Sign-up on our <a href=\"https://dashboard.finverse.com\">Developer Portal</a> and obtain your API credentials (<code>customer_app_id</code>, <code>client_id</code> and <code>client_secret</code>).</p>\n<ol>\n<li><strong>Data products</strong>: you also need to register a valid <code>redirect_uri</code>.</li>\n</ol>\n</li>\n<li><p>Input your API credentials (and <code>redirect_uri</code> for Data products) into Postman as Collection variables or Environment variables (e.g. go to Collection &gt; Edit &gt; Variables)</p>\n</li>\n<li><p>Generate a <code>customer_token</code> to authenticate with Finverse's API (POST /auth/customer/token). Each <code>customer_token</code> expires after 60min, but can be re-generated. You should securely store the <code>customer_token</code> in your back-end to make other API calls.</p>\n</li>\n</ol>\n<h2 id=\"b-test-vs-live-usage\"><strong>B. Test vs. Live usage</strong></h2>\n<p>All API calls (both for test and live usage) should be made to our production environment: <code>https://api.prod.finverse.net/</code></p>\n<p>By default, when you create API credentials on our <a href=\"https://dashboard.finverse.com\">Developer Portal</a>, your app will be enabled as a \"Test\" app only. This allows you to make test payments (using test cards or our testbank) and access test data (by linking our testbank), but you can not make any real payments or access real banks.</p>\n<ul>\n<li><strong>Data products</strong>: we can enable free live usage for testing purposes, subject to a limited quota for your app. Please contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> to request this</li>\n</ul>\n<p>To enable live usage:</p>\n<ol>\n<li><p>Go to our <a href=\"https://dashboard.finverse.com\">Developer Portal</a> and setup a new team (to separate live vs. test usage)</p>\n</li>\n<li><p>Go to API Settings to create API credentials for your new \"Live\" team</p>\n</li>\n<li><p>Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> and specify your \"Live\" team's Customer App ID (viewable under API settings). Finverse will then turn on live usage for your app (this typically requires signing commercial documents which Finverse will send to you)</p>\n</li>\n</ol>\n<h2 id=\"c-use-payments-api\">C. Use Payments API</h2>\n<p>Refer to \"Get Started\" guidance in the Payments API folder.</p>\n<h2 id=\"d-use-data-api\">D. Use Data API</h2>\n<p>Refer to \"Get Started\" guidance in the Data API folder.</p>\n<h2 id=\"e-contact-us-for-support-or-to-go-live\">E. Contact us for support or to go live</h2>\n<p>Contact us at: <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> for any questions or for support.</p>\n<p>In particular, contact us to:</p>\n<ul>\n<li><p><strong>All products:</strong></p>\n<ul>\n<li><p>Turn on your app to live usage (live payments / bank data linking)</p>\n</li>\n<li><p>Customize the Finverse Link UI (e.g. to add your logo and business name)</p>\n</li>\n</ul>\n</li>\n<li><p><strong>Payments products</strong>:</p>\n<ul>\n<li><p>Configure allowed payment methods (e.g. direct debit mandates / QR code bank payments / credit card payments)</p>\n</li>\n<li><p>Configure payments redirect URIs and webhooks</p>\n</li>\n</ul>\n</li>\n</ul>\n<h1 id=\"getting-started-with-the-finverse-link-ui\">Getting started with the Finverse Link UI</h1>\n<p>The Finverse Link UI provides a pre-built UI allowing end-users to use the Finverse platform without any additional UI work from you. In particular, with the Finverse Link UI, an end-user can:</p>\n<ul>\n<li><p><strong>(Payments products)</strong> Make a payment, setup a payment method (using Payment Links), or setup direct debit mandates (using Mandates)</p>\n</li>\n<li><p><strong>(Data products)</strong> Select and link their bank, to access &amp; share their bank data</p>\n</li>\n</ul>\n<h2 id=\"pre-requisites\">Pre-requisites</h2>\n<p>First generate a Link <code>url</code> or <code>link_url</code> using the following end-points:</p>\n<ul>\n<li><p><strong>Payments products:</strong></p>\n<ul>\n<li><p><strong>Payment Links</strong> (recommended integration): <code>POST /payment_links</code></p>\n</li>\n<li><p><strong>Direct Debit Mandates:</strong> <code>POST /mandates/link</code></p>\n</li>\n</ul>\n</li>\n<li><p><strong>Data products</strong>: <code>POST /link/token</code></p>\n</li>\n</ul>\n<p>Refer to the documentation on each of the above endpoints for details.</p>\n<h2 id=\"platform-specific-considerations\">Platform-specific considerations</h2>\n<h3 id=\"finverse-link-ui-in-a-web-app\">Finverse Link UI in a Web App</h3>\n<p>When opening the Finverse Link UI in a Web App, it is important to note that we currently support the following <code>ui_mode</code>:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><code>ui_mode</code> value</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>iframe</code></td>\n<td>Default mode. In this mode, Finverse Link UI expects the <code>link_url</code> to be opened in an iframe. The parent app is responsible for closing the Finverse Link UI (e.g. after a success or failure screen, or when the user clicks a close/exit button).</td>\n</tr>\n<tr>\n<td><code>redirect</code></td>\n<td>In this mode, the Finverse Link UI expects the <code>link_url</code> to be directly opened in a browser. When a user clicks a button to close/exit/finish the flow, the Finverse Link UI will redirect the user to the <code>redirect_uri</code> provided when the Link <code>access_token</code> was created.</td>\n</tr>\n<tr>\n<td><code>auto_redirect</code></td>\n<td>Same as <code>redirect</code> mode, but in this case the user will be automatically redirected if the user doesn't perform any action on the success or failure screen.</td>\n</tr>\n<tr>\n<td><code>standalone</code></td>\n<td>In this mode, the Finverse Link UI expects the <code>link_url</code> to be directly opened in a browser, without any UI redirect at the end of the Link flow. The Finverse Link UI will prompt the user to close the browser tab upon completion of the flow.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"closing-iframe-from-the-parent-web-app\">Closing iframe from the parent web app</h4>\n<p>When in <code>iframe</code> mode the Customer App (parent app) will open Finverse Link in an iframe like the following code.<br><strong>Code</strong></p>\n<p>When the user presses the continue or the close button after linking, it will send a message back (either <code>close</code> or <code>success</code>) to the parent app. The Customer App will need to handle it as follow:</p>\n<p><strong>Code</strong></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-preserveHtml\">// add a listener so we get the message sent by the iframe\nwindow.addEventListener('message', receiveMessage, false);\nconst receiveMessage = (message: any) =&gt; {\n    if (message.data === 'close') {\n        // do whatever is required to close the iframe. The linking did not succeeded due to user pressing the close button.\n        setLinkOpen(false);\n    }\n    if (message.data === 'success') {\n        // do whatever is required to close the iframe\n        setLinkOpen(false);\n        // Since the linking was successful display the next screen\n        history.push('/user');\n    }\n};\n\n</code></pre>\n<h3 id=\"finverse-link-ui-in-a-mobile-app\">Finverse Link UI in a Mobile App</h3>\n<p>When opening Finverse Link in a mobile app it is important to note that we currently support the following <code>ui_mode</code>:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>ui_mode</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>iframe</td>\n<td>This is the default mode. In this mode finverse link url is opened in an iframe and the parent app is responsible for closing finverse link after success or failure</td>\n</tr>\n</tbody>\n</table>\n</div><p>Please review Finverse's public <a href=\"https://github.com/finversetech\">Github repository</a> for guidance on how to link Finverse Link in React Native, Android and iOS.</p>\n<h2 id=\"product-specific-considerations\">Product-specific considerations</h2>\n<h3 id=\"finverse-link-ui-for-payments\">Finverse Link UI for Payments</h3>\n<p>When using the Finverse Link UI to authorize Payment Links or Mandates, a webhook will be called when the Payment Link / Mandate is successful (or fails). Contact the Finverse team to configure this <code>payment_webhook</code>.</p>\n<h3 id=\"finverse-link-ui-for-data-retrieval\">Finverse Link UI for Data retrieval</h3>\n<p>When using Finverse Link to retrieve data it will eventually redirect to the <code>redirect_uri</code> supplied when creating the link token. It will pass along <code>code</code> and <code>state</code>. The <code>code</code> should be exchanged for a Login Identity <code>access token</code> (see <code>POST /auth/token</code>) and the <code>state</code> can be used to reconcile which user the token should be associated with.</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[{"content":"Try Finverse's Demo App in your browser","slug":"try-finverses-demo-app-in-your-browser"},{"content":"Get Started with Finverse API","slug":"get-started-with-finverse-api"},{"content":"Getting started with the Finverse Link UI","slug":"getting-started-with-the-finverse-link-ui"}],"owner":"11503733","collectionId":"416c9a7f-f2f6-494e-8835-0484e475771b","publishedId":"2s83tJGAfA","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"publishDate":"2026-04-24T05:59:42.000Z"},"item":[{"name":"Auth (Customer App)","item":[{"name":"/auth/customer/token (Generate customer_token)","event":[{"listen":"test","script":{"id":"f9dd98ea-1c7c-4047-8343-e34b5bb91456","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if(jsonData.access_token) {","    pm.environment.set(\"customer_token\", jsonData.access_token)","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Login Identity or Error object","pm.test(\"Response has expected keys\", function() { ","    pm.expect(jsonData).to.have.any.keys(","        \"access_token\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"access_token\": {\"type\":\"string\"},","            \"expires_in\": {\"type\":\"number\"},","            \"issued_at\": {\"type\":\"string\"},","            \"token_type\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"access_token\", ","            \"expires_in\",","            \"issued_at\",","            \"token_type\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"be7bc090-0c7b-41f1-8472-3c0b980e4ed1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"client_id\": \"setup_on_developer_portal\",\n  \"client_secret\": \"setup_on_developer_portal\",\n  \"grant_type\": \"client_credentials\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/auth/customer/token","description":"<p>Generate a new customer access_token (<code>customer_token</code>).</p>\n<p><strong>Authentication</strong>: <code>client_id</code> and <code>client_secret</code></p>\n<h1 id=\"request-parameters\">Request parameters</h1>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>client_id</td>\n<td>string, required</td>\n<td>API credentials. These are managed on Finverse developer dashboard (<a href=\"https://dashboard.finverse.com\">dashboard.finverse.com</a>)</td>\n</tr>\n<tr>\n<td>client_secret</td>\n<td>string, required</td>\n<td>API credentials</td>\n</tr>\n<tr>\n<td>grant_type</td>\n<td>string ENUM, required</td>\n<td>Accepted values: <code>grant_type</code></td>\n</tr>\n</tbody>\n</table>\n</div><h1 id=\"response-fields\">Response fields</h1>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>access_token</td>\n<td>string</td>\n<td><strong>(SENSITIVE)</strong> Customer access token (referred to as <code>customer_token</code>)</td>\n</tr>\n<tr>\n<td>expires_in</td>\n<td>integer</td>\n<td>Token validity length (in seconds)</td>\n</tr>\n<tr>\n<td>issued_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Token issue time</td>\n</tr>\n<tr>\n<td>token_type</td>\n<td>string ENUM</td>\n<td>Possible values: <code>Bearer</code></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"token-handling\">Token handling</h2>\n<h3 id=\"storage\">Storage</h3>\n<p><code>customer_token</code> is highly sensitive since it is needed to conduct many Finverse API operations (including retrieving other sensitive tokens).</p>\n<p><strong>Best practices:</strong></p>\n<p>* Securely store the token in your back-end<br />* Never disclose this token externally (e.g. in your front-end).</p>\n<h3 id=\"renewal\">Renewal</h3>\n<p><code>customer_token</code> expires after 1 hour.</p>\n<p>Repeat this request for token renewal.</p>\n","urlObject":{"path":["auth","customer","token"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"62d5e915-3eec-405a-9261-32288876f49a","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"client_id\": \"setup_on_developer_portal\",\n    \"client_secret\": \"setup_on_developer_portal\",\n    \"grant_type\": \"client_credentials\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/auth/customer/token"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-038e9f876f292bf9d37eac35fb59d75a-51a6ee8515aa9dbe-01"},{"key":"vary","value":"Origin"},{"key":"x-cloud-trace-context","value":"038e9f876f292bf9d37eac35fb59d75a/5883652218567695806;o=1"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Fri, 15 Jan 2021 05:19:56 GMT"},{"key":"content-length","value":"1284"},{"key":"x-envoy-upstream-service-time","value":"221"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"access_token\": \"{customer_token}\",\n    \"expires_in\": 3600,\n    \"issued_at\": \"2022-08-01T01:01:00.000Z\",\n    \"token_type\": \"Bearer\"\n}"},{"id":"ee8a6e52-4993-456e-964d-99c67392c8ce","name":"Error (invalid credentials)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"client_id\": \"setup_on_developer_portal\",\n  \"client_secret\": \"setup_on_developer_portal\",\n  \"grant_type\": \"client_credentials\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/auth/customer/token"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Wed, 21 Sep 2022 16:08:44 GMT"},{"key":"Content-Length","value":"182"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40003,\n        \"error_code\": \"INVALID_CLIENT\",\n        \"message\": \"Client authentication failed. Please verify client_id and client_secret inputs.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"084ce5db-f5bf-49a0-93ee-98d85da214d3","name":"Error (invalid parameter)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"client_id\": \"\",\n  \"client_secret\": \"setup_on_developer_portal\",\n  \"grant_type\": \"client_credentials\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/auth/customer/token"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Wed, 21 Sep 2022 16:06:21 GMT"},{"key":"Content-Length","value":"331"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 604,\n    \"error\": {\n        \"code\": \"INVALID_PARAMETER\",\n        \"details\": \"client_id in body should be at least 26 chars long\",\n        \"error_code\": \"INVALID_PARAMETER\",\n        \"message\": \"The parameters provided are invalid. See details.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    },\n    \"message\": \"client_id in body should be at least 26 chars long\"\n}"},{"id":"bac8288f-a5ef-422c-b8a3-f9a51085eee4","name":"Error (unsupported grant_type)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"client_id\": \"setup_on_developer_portal\",\n  \"client_secret\": \"setup_on_developer_portal\",\n  \"grant_type\": \"client_credentialz\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/auth/customer/token"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Mon, 03 Oct 2022 16:30:50 GMT"},{"key":"Content-Length","value":"232"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40002,\n        \"error_code\": \"UNSUPPORTED_GRANT_TYPE\",\n        \"message\": \"Unsupported grant_type. Please review allowed parameter values in API documentation.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"ed2929b5-7347-485e-986d-4b09669998f3","name":"Error (path not found)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"client_id\": \"setup_on_developer_portal\",\n  \"client_secret\": \"setup_on_developer_portal\",\n  \"grant_type\": \"client_credentials\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/auth/customer/token2"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Tue, 06 Sep 2022 15:08:05 GMT"},{"key":"Content-Length","value":"257"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 404,\n    \"error\": {\n        \"code\": \"PATH_NOT_FOUND\",\n        \"details\": \"path /auth/customer/token2 was not found\",\n        \"error_code\": \"PATH_NOT_FOUND\",\n        \"message\": \"The provided path was not found\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    },\n    \"message\": \"path /auth/customer/token2 was not found\"\n}"}],"_postman_id":"be7bc090-0c7b-41f1-8472-3c0b980e4ed1"}],"id":"660bbefe-a6c4-443a-a85f-2331f2e407eb","event":[{"listen":"prerequest","script":{"id":"e27aa3dd-1398-4a24-bd7e-dc28f8d1bd08","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"0466341d-811b-4099-b373-aa6f03838806","type":"text/javascript","exec":[""]}}],"_postman_id":"660bbefe-a6c4-443a-a85f-2331f2e407eb","description":""},{"name":"Payments API","item":[{"name":"Payment Links","item":[{"name":"/payment_links (Create Payment Link)","event":[{"listen":"test","script":{"id":"4764f3d4-b10d-4c6e-a628-74f942113a36","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if(jsonData.payment_link_id) {","    pm.environment.set(\"payment_link_id\", jsonData.payment_link_id)","};","","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payment Link ID or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"payment_link_id\",","        \"error\"","    )","});","","//Payment Link status is CREATED","pm.test(\"Payment Link status is CREATED\", function() {","    pm.expect(jsonData.status).to.equal(\"CREATED\")","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"amount\": {\"type\":\"integer\"},","            \"created_at\": {\"type\":\"string\"},","            \"currency\": {\"type\":\"string\"},","            \"integration_metadata\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"integration_id\": {\"type\":\"string\"},","                    \"rapidstor_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_token\": {\"type\":\"string\"},","                            \"corp_code\": {\"type\":\"string\"},","                            \"i_anniv_days\": {\"type\":\"integer\"}, ","                            \"s_location_code\": {\"type\":\"string\"},","                            \"tenant_default_currency\": {\"type\":\"string\"},","                            \"tenant_id\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"account_token\",","                            \"corp_code\",","                            \"s_location_code\",","                            \"tenant_id\"","                        ]","                    }","                },","                \"required\": [","                    \"integration_id\"","                ]","            },","            \"link_customizations\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"countries\": {\"type\":\"array\"},","                    \"institution_status\": {\"type\":\"string\"},","                    \"language\": {","                        \"type\":\"string\",","                        \"enum\": [\"en\", \"ko\", \"vi\", \"zh\"]","                    },","                    \"link_mode\": {\"type\":\"string\"},","                    \"redirect_uri\": {\"type\":\"string\"},","                    \"ui_mode\": {","                        \"type\":\"string\",","                        \"enum\": [\"redirect\", \"standalone\", \"iframe\"]","                    }","                },","                \"required\": []","            },","            \"metadata\": {\"type\":\"object\"},","            \"mode\": {  ","                \"type\":\"string\",","                \"enum\": [\"PAYMENT\", \"SETUP\"]","            },","            \"payment\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"amount\": {\"type\":\"integer\"},","                    \"amount_total_with_surcharge\": {\"type\":\"integer\"},","                    \"created_at\": {\"type\":\"string\"},","                    \"currency\": {\"type\":\"string\"},","                    \"error\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"details\": {\"type\":\"string\"},","                            \"error_code\": {\"type\":\"string\"},","                            \"message\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                            }","                        },","                        \"required\": [","                            \"error_code\",","                            \"message\",","                            \"type\"","                        ] ","                    },","                    \"fees\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"amount\": {\"type\":\"integer\"},","                                \"currency\": {\"type\":\"string\"},","                                \"paid_by\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                },","                                \"paid_by_account_id\": {\"type\":\"string\"}","                            },","                            \"required\": [","                                \"amount\", ","                                \"currency\", ","                                \"paid_by\", ","                                \"paid_by_account_id\"","                            ]","                        }","                    },","                    \"metadata\": {\"type\":\"object\"},","                    \"payment_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"collection_entity_name\": {\"type\":\"string\"},","                            \"description\": {\"type\":\"string\"},","                            \"external_transaction_reference\": {\"type\": \"string\"},","                            \"mandate_id\": {\"type\":\"string\"},","                            \"processor_entity_name\": {\"type\":\"string\"},","                            \"processor_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"auth_code\": {\"type\":\"string\"},","                                    \"processor_id\": {\"type\":\"string\"},","                                    \"processor_reference\": {\"type\":\"string\"},","                                    \"result\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"decline_code\": {\"type\":\"string\"},","                                            \"decline_reason\": {\"type\":\"string\"},","                                            \"last_action\": {\"type\":\"string\"},","                                            \"result_code\": {\"type\":\"string\"},","                                            \"status\": {\"type\":\"string\"}","                                        },","                                        \"required\": [","                                           \"processor_id\"","                                        ]","                                    },","                                },","                                \"required\": []","                            },","                            \"recurring_payment_mode\": {","                                \"type\":\"string\",","                                \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                            },                       ","                            \"references\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"bank_transaction_reference\": {\"type\":\"string\"},","                                    \"dda_reference\": {\"type\":\"string\"},","                                    \"finverse_transaction_reference\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                            \"transaction_reference_id\": {\"type\": \"string\"} // TO BE DEPRECATED","                            },","                        \"required\": [","                            \"description\",","                            \"external_transaction_reference\"","                        ]","                    },","                    \"payment_id\": {\"type\":\"string\"},","                    \"payment_method\": { // SIMPLIFIED PAYMENT METHOD OBJECT -- TO BE EXPANDED LATER INTO FULL PAYMENT_METHOD OBJECT","                        \"type\": \"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"card\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"card_details\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"brand\": {\"type\":\"string\"},","                                            \"collection_entity_name\": {\"type\":\"string\"},","                                            \"country\": {\"type\":\"string\"},","                                            \"expiry_month\": {\"type\":\"integer\"},","                                            \"expiry_year\": {\"type\":\"integer\"}, ","                                            \"fingerprint\": {\"type\":\"string\"},","                                            \"finverse_authorization_reference\": {\"type\":\"string\"},","                                            \"funding\": {","                                                \"type\":\"string\",","                                                \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                                            },","                                            \"is_commercial\": {\"type\":\"boolean\"},","                                            \"last4\": {\"type\":\"string\"},","                                            \"processor_entity_name\": {\"type\":\"string\"},","                                            \"processor_details\": {","                                                \"type\":\"object\",","                                                \"additionalProperties\": false,","                                                \"properties\": {","                                                    \"auth_code\": {\"type\":\"string\"},","                                                    \"processor_id\": {\"type\":\"string\"},","                                                    \"processor_reference\": {\"type\":\"string\"},","                                                    \"token_id\": {\"type\":\"string\"},","                                                },","                                                \"required\": []","                                            },","                                            \"recurring_payment_mode\": {","                                                \"type\":\"string\",","                                                \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                                            }","                                        },","                                        \"required\": []","                                    }","                                },","                                \"required\": []","                            }","                        },","                        \"required\": [ ]","                    },","                    \"payment_method_id\":  {\"type\":\"string\"}, // TBD: MAY BE DEPRECATED LATER ONCE INCLUDED IN FULL PAYMENT_METHOD OBJECT","                    \"recipient\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"name\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"name\"","                        ]","                    },","                    \"recipient_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            }","                        },","                        \"required\": [","                            \"account_id\",","                            \"account_type\"","                        ]","                    },","                    \"sender\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"external_user_id\": {\"type\":\"string\"},","                            \"name\": {\"type\":\"string\"},","                            \"user_details\": {","                                \"type\":[\"array\",\"null\"],","                                \"items\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"details_type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                        },","                                        \"values\": {","                                            \"type\": \"array\",","                                            \"items\": {","                                                \"type\": \"string\"","                                            }","                                        }","                                    },","                                    \"required\": [","                                        \"details_type\",","                                        \"values\"","                                    ]","                                }","                            },","                            \"user_id\": {\"type\":\"string\"},","                            \"user_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                            }","                        },","                        \"required\": [","                            \"external_user_id\",","                            //\"name\", // TO BE ENFORCED","                            \"user_id\",","                            \"user_type\"","                        ]","                    },","                    \"sender_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_number\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"number\": {\"type\":\"string\"},","                                    \"type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"IBAN\", \"LOCAL\"]","                                    }","                                },","                                \"required\": [","                                    \"number\",","                                    \"type\"","                                ]","                            },","                            \"account_number_masked\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            },","                            \"accountholder_name\": {\"type\":\"string\"},","                            \"bank_code\": {\"type\":\"string\"},","                            \"institution_id\": {\"type\":\"string\"},","                            \"institution_name\": {\"type\":\"string\"},","                            \"user_id\": {\"type\":\"string\"},","                        },","                        \"required\": [","                            \"account_type\",","                            \"user_id\"","                        ]","                    },","                    \"status\": {","                        \"type\":\"string\",","                        \"enum\": [\"CREATED\", \"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"SUBMITTED\", \"EXECUTED\", \"CANCELLED\", \"FAILED\"]","                    },","                    \"surcharge_amount\": {\"type\":\"integer\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"CARD\", \"MANDATE\", \"MANUAL\", \"SINGLE\"]","                    },","                    \"updated_at\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"amount\",","                    \"amount_total_with_surcharge\",","                    \"created_at\",","                    \"currency\",","                    \"fees\",","                    \"payment_details\",","                    \"payment_id\",","                    //\"payment_method\", // TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT METHOD","                    //\"payment_method_id\", // TBC: TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT_METHOD_ID","                    \"recipient\",","                    \"recipient_account\",","                    \"sender\",","                    \"status\",","                    \"surcharge_amount\",","                    \"type\",","                    \"updated_at\"","                ]","            },","            \"payment_details\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"description\": {\"type\":\"string\"},","                    \"external_transaction_reference\": {\"type\":\"string\"}","                    },","                \"required\": []","            },","            \"payment_link_id\": {\"type\":\"string\"},","            \"payment_metadata\": {\"type\":\"object\"},","            \"payment_method\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"card\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"card_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"acquirer_authorization_reference\": {\"type\":\"string\"},","                                    \"brand\": {\"type\":\"string\"},","                                    \"brand_product_name\": {\"type\":\"string\"},","                                    \"card_number_alias\": {\"type\":\"string\"},","                                    \"collection_entity_name\": {\"type\":\"string\"},","                                    \"country\": {\"type\":\"string\"},","                                    \"expiry_month\": {\"type\":\"integer\"},","                                    \"expiry_year\": {\"type\":\"integer\"}, ","                                    \"fingerprint\": {\"type\":\"string\"},","                                    \"finverse_authorization_reference\": {\"type\":\"string\"},","                                    \"funding\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                                    },","                                    \"is_commercial\": {\"type\":\"boolean\"},","                                    \"last4\": {\"type\":\"string\"},","                                    \"processor_entity_name\": {\"type\":\"string\"},","                                    \"processor_details\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"auth_code\": {\"type\":\"string\"},","                                            \"processor_id\": {\"type\":\"string\"},","                                            \"processor_reference\": {\"type\":\"string\"},","                                            \"token_id\": {\"type\":\"string\"},","                                        },","                                        \"required\": []","                                    },","                                    \"recurring_payment_mode\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                                    }","                                },","                                \"required\": []","                            },","                            \"created_at\": {\"type\":\"string\"},","                            \"recipient_account\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"account_id\": {\"type\":\"string\"},","                                    \"account_type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                    }","                                },","                                \"required\": [\"account_id\", \"account_type\"]","                            },","                            \"risk_data\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"processor_risk_data\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"browser_type\": {\"type\":\"string\"},","                                            \"device_type\": {\"type\":\"string\"},","                                            \"shopper_country\": {\"type\":\"string\"},","                                            \"shopper_ip\": {\"type\":\"string\"},","                                            \"shopper_locale\": {\"type\":\"string\"}","                                        },","                                        \"required\": []","                                    },","                                },","                                \"required\": []","                            },","                            \"status\": {","                                \"type\":\"string\",","                                \"enum\": [\"PROCESSING\", \"SUCCEEDED\", \"CANCELLED\"]","                            },","                            \"updated_at\": {\"type\":\"string\"},","                        },","                        \"required\" : [","                            \"created_at\",","                            \"status\",","                            \"updated_at\"","                        ]","                    },","                    \"integration_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"adyen_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"auth_code\": {\"type\":\"string\"},","                                    \"payment_method_id\": {\"type\":\"string\"},","                                    \"psp_reference\": {\"type\":\"string\"}, ","                                    \"recurring_processing_model\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"payment_method_id\",","                                    \"recurring_processing_model\"","                                ]","                            },","                            \"cybersource_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"payment_token\": {\"type\":\"string\"}  ","                                },","                                \"required\": [","                                    \"payment_token\"","                                ]","                            },","                            \"gocardless_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"funds_settlement\": {\"type\":\"string\"},","                                    \"last_action\":  {\"type\":\"string\"},","                                    \"mandate_id\": {\"type\":\"string\"},","                                    \"next_possible_charge_date\": {\"type\":\"string\"}, ","                                    \"payments_require_approval\": {\"type\":\"boolean\"},","                                    \"reference\": {\"type\":\"string\"},","                                    \"scheme\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"mandate_id\"","                                ]","                            },","                            \"integration_id\": {\"type\":\"string\"},","                            \"stripe_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"customer\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"id\": {\"type\":\"string\"}","                                        },","                                        \"required\": [\"id\"] ","                                    },","                                    \"payment_method\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"id\": {\"type\":\"string\"}","                                        },","                                        \"required\": [\"id\"] ","                                    },","                                },","                                \"required\": [","                                    \"customer\",","                                    \"payment_method\"","                                ]","                            }","                        },","                        \"required\": [","                            \"integration_id\"","                        ]","                    },","                    \"mandate\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"created_at\": {\"type\":\"string\"},  ","                            \"error\": {","                                \"type\": \"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"details\": {\"type\":\"string\"},","                                    \"error_code\": {\"type\":\"string\"},","                                    \"message\": {\"type\":\"string\"},","                                    \"request_id\": {\"type\":\"string\"},","                                    \"type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                                    }","                                },","                                \"required\" : [","                                    \"error_code\",","                                    \"message\",","                                    \"request_id\",","                                    \"type\"","                                ]","                            },","                            \"fees\": {","                                \"type\":\"array\",","                                \"items\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"amount\": {\"type\":\"integer\"},","                                        \"currency\": {\"type\":\"string\"},","                                        \"paid_by\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                        },","                                        \"paid_by_account_id\": {\"type\":\"string\"}","                                    },","                                    \"required\": [","                                        \"amount\", ","                                        \"currency\", ","                                        \"paid_by\", ","                                        \"paid_by_account_id\"","                                    ]","                                }","                            },","                            \"mandate_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"collection_entity_name\": {\"type\":\"string\"},","                                    \"currency\": {\"type\":\"string\"},","\t\t\t                        \"dda_reference\": {\"type\":\"string\"},","                                    \"description\": {\"type\":\"string\"},","                                    \"end_date\": {\"type\":\"string\"},","                                    \"mandate_bank_reference\": {\"type\":\"string\"},","                                    \"payment_schedule\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"amount\": {\"type\":\"integer\"},","                                            \"frequency\": {\"type\":\"string\"}","                                        },","                                        \"required\": [","                                            \"amount\",","                                            \"frequency\"","                                        ]","                                    },","                                    \"processor_entity_name\": {\"type\":\"string\"},","                                    \"start_date\": {\"type\":\"string\"},","                                    \"transaction_limits\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"max_period_amount\": {\"type\":\"integer\"},","                                            \"max_period_count\": {\"type\":\"integer\"},","                                            \"max_transaction_amount\": {\"type\":\"integer\"},","                                            \"max_transaction_amount_set_by_payer_initial\": {\"type\":\"integer\"},","                                            \"period\": {\"type\":\"string\"}","                                        },","                                        \"required\": []","                                    }","                                },","                                \"required\": [","                                    \"currency\",","                                    \"description\"","                                ]","                            },","                            \"mandate_id\": {\"type\":\"string\"},","                            \"metadata\": {\"type\":\"object\"},","                            \"payment_method_id\": {\"type\":\"string\"},","                            \"recipient\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"name\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"name\"","                                ]","                            },","                            \"recipient_account\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"account_id\": {\"type\":\"string\"},","                                    \"account_type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                    },","                                    \"name\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"account_id\",","                                    \"account_type\"","                                ]","                            },","                            \"sender\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"external_user_id\": {\"type\":\"string\"},","                                    \"name\": {\"type\":\"string\"},","                                    \"user_details\": {","                                        \"type\":[\"array\",\"null\"],","                                        \"items\": {","                                            \"type\":\"object\",","                                            \"additionalProperties\": false,","                                            \"properties\": {","                                                \"details_type\": {","                                                    \"type\":\"string\",","                                                    \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                                },","                                                \"values\": {","                                                    \"type\": \"array\",","                                                    \"items\": {","                                                        \"type\": \"string\"","                                                    }","                                                }","                                            },","                                            \"required\": [","                                                \"details_type\",","                                                \"values\"","                                            ]","                                        }","                                    },","                                    \"user_id\": {\"type\":\"string\"},","                                    \"user_type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                                    }","                                },","                                \"required\": [","                                    \"external_user_id\",","                                    //\"name\", // TO BE ENFORCED","                                    \"user_id\",","                                    \"user_type\"","                                ]","                            },","                            \"sender_account\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"account_id\": {\"type\":\"string\"},","                                    \"account_number\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"number\": {\"type\":\"string\"},","                                            \"type\": {","                                                \"type\":\"string\",","                                                \"enum\": [\"IBAN\", \"LOCAL\"]","                                            }","                                        },","                                        \"required\": [","                                            \"number\",","                                            \"type\"","                                        ]","                                    },","                                    \"account_number_masked\": {\"type\":\"string\"},","                                    \"account_type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                    },","                                    \"accountholder_name\": {\"type\":\"string\"},","                                    \"bank_code\": {\"type\":\"string\"},","                                    \"institution_id\": {\"type\":\"string\"},","                                    \"institution_name\": {\"type\":\"string\"},","                                    \"user_id\": {\"type\":\"string\"},","                                },","                                \"required\": [","                                    \"account_type\",","                                    \"user_id\"","                                ]","                            },","                            \"status\": {","                                \"type\":\"string\",","                                \"enum\": [\"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"FAILED\"]","                            },","                            \"updated_at\": {\"type\":\"string\"}","                        },","                        \"required\" : [","                            \"created_at\",","                            \"fees\",","                            \"mandate_details\",","                            \"mandate_id\",","                            \"payment_method_id\",","                            \"recipient\",","                            \"sender\",","                            \"status\",","                            \"updated_at\"","                        ]","                    },","                    \"payment_method_id\": {\"type\": \"string\"},","                    \"payment_method_type\": {","                        \"type\": \"string\",","                        \"enum\": [\"CARD\", \"MANDATE\"]","                    }","                },","                \"if\": {","                    \"properties\": {","                        \"payment_method_type\": {\"const\": \"CARD\"}","                    }","                },","                \"then\": {","                    \"required\" : [","                        \"card\",","                        \"payment_method_id\",","                        \"payment_method_type\"","                    ]","                },","                \"if\": {","                    \"properties\": {","                        \"payment_method_type\": {\"const\": \"MANDATE\"}","                    }","                },","                \"then\": {","                    \"required\" : [","                        \"mandate\",","                        \"payment_method_id\",","                        \"payment_method_type\"","                    ]","                }","            },","            \"payment_setup_options\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"autopay_enrollment_configuration\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"display_enrollment_screen\": {\"type\":\"boolean\"},","                            \"enrollment_prefill_value\": {","                                \"type\":\"string\",","                                \"enum\": [\"YES\", \"NO\", \"\"]","                            }","                        },","                        \"required\": [","                            \"display_enrollment_screen\"","                        ]","                    },","                    \"future_payments\": {","                        \"type\":\"string\",","                        \"enum\": [\"AUTOPAY\", \"CLICK_TO_PAY\"]","                    },","                    \"mandate_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"description\": {\"type\":\"string\"},","                            \"end_date\": {\"type\":\"string\"},","                            \"payment_schedule\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"amount\": {\"type\":\"integer\"},","                                    \"frequency\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"amount\",","                                    \"frequency\"","                                ]","                            },","                            \"start_date\": {\"type\":\"string\"},","                            \"transaction_limits\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"max_period_amount\": {\"type\":\"integer\"},","                                    \"max_period_count\": {\"type\":\"integer\"},","                                    \"max_transaction_amount\": {\"type\":\"integer\"},","                                    \"period\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"max_transaction_amount\"","                                ]","                            }","                        },","                        \"required\": []","                    },","                    \"payment_method_types\": {","                        \"type\":\"array\",","                        \"additionalProperties\": false,","                        \"items\": {","                            \"additionalProperties\": false,","                            \"type\":\"string\",","                            \"enum\": [\"CARD\", \"MANDATE\", \"MANUAL\"]","                        }","                    },","                    \"recipient_account_filters\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"business_unit\": {\"type\":\"string\"}","                        },","                        \"required\": []","                    },","                    \"recurring_payment_mode\": {","                        \"type\":\"string\",","                        \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                    }","                },","                \"required\": [","                    \"autopay_enrollment_configuration\",","                    \"recurring_payment_mode\"","                ]","            },","            \"sender\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"email\": {\"type\":\"string\"},","                    \"external_user_id\": {\"type\":\"string\"},","                    \"name\": {\"type\":\"string\"},","                    \"user_details\": {","                        \"type\":[\"array\",\"null\"],","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                },","                                \"values\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"type\": \"string\"","                                    }","                                }","                            },","                            \"required\": [","                                \"details_type\",","                                \"values\"","                            ]","                        }","                    },","                    \"user_id\": {\"type\":\"string\"},","                    \"user_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                    }","                },","                \"required\": [","                    \"external_user_id\",","                    //\"name\", // TO BE ENFORCED","                    \"user_id\",","                ]","            },","            \"session_status\": {","                \"type\":\"string\",","                \"enum\": [\"OPEN\", \"PROCESSING\", \"COMPLETE\", \"FAILED\"]","            },","            \"status\": {","                \"type\":\"string\",","                \"enum\": [\"CREATED\", \"CANCELLED\", \"PAID\", \"SETUP_SUCCEEDED\"]","            },","            \"unique_reference_id\": {\"type\":\"string\"},","            \"updated_at\": {\"type\":\"string\"},","            \"url\": {\"type\":\"string\"}","        },","        \"if\": {","            \"properties\": {","                \"mode\": {\"const\": \"PAYMENT\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"amount\",","                \"created_at\",","                \"currency\",","                \"mode\",","                \"payment_link_id\",","                \"sender\",","                \"session_status\",","                \"status\",","                \"updated_at\",","                \"unique_reference_id\",","                \"url\"","            ]","        },","        \"if\": {","            \"properties\": {","                \"mode\": {\"const\": \"SETUP\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"created_at\",","                \"currency\",","                \"mode\",","                \"payment_link_id\",","                \"payment_setup_options\",","                \"sender\",","                \"session_status\",","                \"status\",","                \"updated_at\",","                \"unique_reference_id\",","                \"url\"","            ]","        }","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}},{"listen":"prerequest","script":{"id":"e5c3eb22-5e1c-4bb3-9e47-46bd08e86c4a","exec":[""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"9dc2b33a-4302-40e3-977b-5c197a3b178d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 100,\n    \"currency\": \"HKD\",\n    \"link_customizations\": {\n        \"countries\": [],\n        \"institution_status\": \"\",\n        \"language\": \"en\",\n        \"link_mode\": \"\",\n        \"redirect_uri\": \"\",\n        \"ui_mode\": \"\"\n    },\n    \"mode\": \"PAYMENT\",\n    \"payment_details\": {\n        \"description\": \"TEST Payment\",\n        \"external_transaction_reference\": \"INV12345\"\n    },\n    // \"integration_metadata\": {\n    //    \"integration_id\": \"RAPIDSTOR\", \n    //     // Required for Sitelink/Rapidstor self-storage ERP integrations (custom integration, contact support@finverse.com to setup)\n    //    \"rapidstor_metadata\": {\n    //        \"account_token\": \"{{account_token}}\",\n    //        \"corp_code\": \"{{corp_code}}\",\n    //        \"s_location_code\": \"{{s_location_code}}\",\n    //        \"tenant_id\": \"{{tenant_id}}\"\n    //    }\n    // },\n    //\"payment_setup_options\": {\n    //    \"autopay_enrollment_configuration\": {\n    //        \"display_enrollment_screen\": false,\n    //        \"enrollment_prefill_value\": \"NO\"\n    //    }\n\t// \t\"future_payments\": \"AUTOPAY\"\n    // },\n        //  \"mandate_details\": {\n    //          \"description\": \"Test Mandate\",\n            //  \"end_date\": \"2025-07-15\",\n            //  \"start_date\": \"{{today}}\"\n            //  \"transaction_limits\": {\n            //      \"max_period_amount\": 10000,\n            //      \"max_period_count\": 10,\n            //      \"max_transaction_amount\": {{max_trx_amount_in_minor}},\n            //      \"period\": \"MONTHLY\"\n            //  }\n        //  }\n    //      \"payment_method_types\": [\"CARD\", \"MANDATE\", \"MANUAL\"]\n        // \"recipient_account_filters\": {\n        //     \"business_unit\": \"kcp-testbank\"\n        // },\n        // \"recurring_payment_mode\": \"FIXED_SCHEDULE\"\n    //},\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1777634238\",\n        \"name\": \"John Doe\"\n    },\n    \"unique_reference_id\":\"Inv12345|1777634238\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_links/","description":"<p>Create new Payment Link.</p>\n<p>To avoid duplicate payments, you must provide a <code>unique_reference_id</code> which uniquely identifies the bill/invoice being paid. This allows you to safely create/retry Payment Links multiple times using the same <code>unique_reference_id</code>, for example if a user restarts the payment flow on a different device. Finverse will only allow a single payment per <code>unique_reference_id</code>. See \"Implementation guidance\" section below for additional details on how to generate a <code>unique_reference_id</code>.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"request-parameters\">Request parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>amount</td>\n<td>integer (ISO 4217 \"minor\" currency unit), conditionally required</td>\n<td>Amount of the payment (in minor currency unit).  <br />  <br />Required if <code>mode</code> = <code>PAYMENT</code>.</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code), required</td>\n<td>Currency of the payment (e.g. HKD)</td>\n</tr>\n<tr>\n<td>integration_metadata</td>\n<td>object, optional</td>\n<td>Optional parameters to pass custom values for Finverse-supported integrations (e.g. ERP/CRM/accounting integrations). See below.</td>\n</tr>\n<tr>\n<td>link_customizations</td>\n<td>object, optional</td>\n<td>Optional parameters to customize the behaviour of Finverse Link's UI to fit your implementation requirements. See below.</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format. E.g. <code>contract_id: 1234</code></td>\n</tr>\n<tr>\n<td>mode</td>\n<td>string ENUM, required</td>\n<td>Specified payment link mode.  <br />  <br /><strong>Accepted values:</strong>  <br />- <code>PAYMENT</code>: payment link is used to collect the specified payment amount now;  <br />- <code>SETUP</code>: payment link is used to register a payment method to be charged later (using <code>POST /payments</code>).</td>\n</tr>\n<tr>\n<td>payment_details</td>\n<td>object, conditionally required</td>\n<td>Details on the payment. See below.  <br />  <br />Only used if <code>mode</code> = <code>PAYMENT</code>.</td>\n</tr>\n<tr>\n<td>payment_metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes associated with the payment, in key:value format.  <br />  <br />Use this to pass any information you later need to tie a successful payment back to its original context (e.g. user, bill, invoice, checkout).  <br />  <br />E.g. <code>contract_id: 1234</code>.  <br />  <br />These attributes will be added as <code>metadata</code> on any payment object directly created by the Payment Link, and will be included in: (i) any API response with a payment object; (ii) Payments webhooks; and (iii) Finverse's reporting (e.g. statements issued to customer apps).  <br />  <br />Only used if <code>mode</code> = <code>PAYMENT</code>. Will be ignored if <code>mode</code> = <code>SETUP</code>.</td>\n</tr>\n<tr>\n<td>payment_setup_options</td>\n<td>object, conditionally required</td>\n<td>Additional parameters to configure payment methods and future payments. See below.  <br />  <br />Required if <code>mode</code> = <code>SETUP</code>.</td>\n</tr>\n<tr>\n<td>sender</td>\n<td>object, required</td>\n<td>Details on the sender of the payment. See below.</td>\n</tr>\n<tr>\n<td>unique_reference_id</td>\n<td>string, required</td>\n<td>Customer-supplied string, uniquely identifying the payment to be collected. See “_Handling retries and avoiding duplicate payments_” below.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"integration_metadata-object-optional\">integration_metadata (object, optional)</h3>\n<p>Use the following optional parameters to pass custom values for Finverse-supported integrations (e.g. ERP/CRM/accounting integrations).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>integration_id</td>\n<td>string ENUM, required</td>\n<td>ID of the specified integration.  <br />  <br /><strong>Accepted values:</strong>  <br />- RAPIDSTOR: SiteLink/Rapidstor property management integration (managed by R6 Digital).</td>\n</tr>\n<tr>\n<td>rapidstor_metadata</td>\n<td>object, conditionally required</td>\n<td>Location and tenant parameters for Rapidstor integration. Contact <code>support@finverse.com</code> for details.  <br />  <br />Required if <code>integration_id</code> = <code>RAPIDSTOR</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"link_customizations-object-optional\">link_customizations (object, optional)</h3>\n<p>You can use the following optional parameters to customize the behaviour of Finverse Link's UI to fit your implementation requirements.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>countries</td>\n<td>JSON array (3-letter ISO-3166-1 Alpha-3 codes), optional</td>\n<td>(For direct debit payments only)  <br />  <br />Filters \"Select Institution\" screen in Finverse Link UI to only list institutions from the specified countries. If empty, all institutions are listed.  <br />  <br />E.g. <code>[\"SGP\", \"VNM\"]</code>  <br />  <br /><strong>Recommended value</strong>: []</td>\n</tr>\n<tr>\n<td>institution_status</td>\n<td>string (space-separated list), optional</td>\n<td>(For direct debit payments only)  <br />  <br />Specifies which institutions to list in the Finverse Link UI based on their reliability status. If empty, only supported institutions are listed.  <br />  <br />E.g. <code>\"beta supported\"</code>  <br />  <br /><strong>Recommended value</strong>: \"\"</td>\n</tr>\n<tr>\n<td>language</td>\n<td>string (2-letter ISO 639-1 alpha-2 code), optional</td>\n<td>Desired language selection for Finverse Link UI.  <br />  <br />If empty or if an unsupported language is specified, Finverse Link will display the default language.  <br />  <br />Users can manually override the language selection on the 1st Finverse Link screen.  <br />  <br />Supported languages: <code>en</code> (default), <code>vi</code>, <code>zh</code></td>\n</tr>\n<tr>\n<td>link_mode</td>\n<td>string (space-separated list), optional</td>\n<td>Specifies whether to display specific sets of institutions (e.g. test institutions) in the Finverse Link UI. This can be helpful for testing purposes.  <br />  <br />E.g. <code>\"real test\"</code>  <br />  <br /><strong>Accepted values</strong>:  <br />- <code>real</code> : show only real banks (default for live apps)  <br />- <code>test</code> : show only testbanks  <br />- <code>real test</code> shows both real banks &amp; testbanks (default for test apps)  <br />  <br /><strong>Recommended value</strong>: \"\"</td>\n</tr>\n<tr>\n<td>redirect_uri</td>\n<td>string, optional</td>\n<td>Required when <code>ui_mode</code> = <code>redirect</code>.  <br />  <br />When <code>ui_mode</code> = <code>redirect</code>, the Finverse Link UI will redirect to this uri after success, failure or when user exits the UI.  <br />  <br />Uri must be one of the redirect_uri values registered by customer under \"API settings\" in Finverse developer dashboard (dashboard.finverse.com).</td>\n</tr>\n<tr>\n<td>ui_mode</td>\n<td>string ENUM, optional</td>\n<td>Specifies the behaviour of the Finverse Link UI upon completion of the authorization flow (in both success or error cases). If left empty, Finverse Link will default to <code>standalone</code> behaviour for both the Payment Links and Mandates UI.  <br />  <br /><strong>Accepted values</strong>:  <br />- <code>redirect</code>: for when Finverse Link UI is launched as a window/webview embedded within the customer's application. Finverse will display an Exit (\"X\") button on each screen and a \"Continue\" button on final success/error screens, each redirecting to the specified <code>redirect_uri</code>, allowing the user to return to the customer's application.  <br />  <br />- <code>standalone</code>: for when Finverse Link UI is launched in a new window/webview without the need to navigate back to the customer's application. Finverse will display a \"You may close this window now\" message on final success/error screens, guiding the user to manually close the window/webview.  <br />  <br />- <code>iframe</code>: for when Finverse Link UI is launched as an iframe/webview embedded within the customer's application. Finverse will display an Exit (\"X\") button on each screen and a \"Continue\" button on final success/error screens, allowing the user to close the iframe/webview and return to the customer's application (requires customer's application to handle iframe/webview messages). Limitations: <code>iframe</code> cannot be used for Payment Links which accept credit card payment methods (e.g. Stripe).  <br />  <br /><strong>Recommended value</strong>: <code>redirect</code> or <code>standalone</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment_details-object-conditionally-required\">payment_details (object, conditionally required)</h3>\n<p>Details describing the Payment transaction.</p>\n<p>Required if <code>mode</code> = <code>PAYMENT</code>.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>description</td>\n<td>string (SWIFT character set, max length: 100 characters), conditionally required</td>\n<td>User-facing description for the payment transaction. SWIFT character set includes the following characters: alphanumeric, space, and symbols <code>/ - ? : ( ) . , ' +</code>  <br />  <br />Required if <code>mode</code> = <code>PAYMENT</code>.</td>\n</tr>\n<tr>\n<td>external_transaction_reference</td>\n<td>string (SWIFT character set, max length: 35 characters), conditionally required</td>\n<td>User-facing transaction reference for the payment transaction (e.g. bill/invoice number). Some payment methods may display this on the user's statement.  <br />  <br />Required if <code>mode</code> = <code>PAYMENT</code>.  <br />  <br />SWIFT character set includes the following characters: alphanumeric, space, and symbols <code>/ - ? : ( ) . , ' +</code>  <br />  <br />We recommend including at least 1 latin letter in the reference, as some payment methods (e.g. Cards) cannot process payments where statement references have zero letters.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment_setup_options-object-conditionally-required\">payment_setup_options (object, conditionally required)</h3>\n<p>Additional parameters to configure payment methods and future payments.</p>\n<p>Required if <code>mode</code> = <code>SETUP</code>.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>autopay_enrollment_configurations</td>\n<td>object, optional</td>\n<td>Configures the FInverse Link UI to enroll users into autopay (i.e. collects consent for future payments).  <br />  <br />This controls whether the Finverse UI will prompt users to opt-in to autopay, when autopay is not already enforced (i.e. when <code>future_payments</code> ≠ <code>AUTOPAY</code>).  <br />  <br />When a user consents to autopay, the payment user property <code>autopay_consent</code> is set to <code>true</code>, which allows:  <br />- User can be charged for payments (using <code>POST /payments</code>) without obtaining additional user consent for each charge;  <br />- Finverse can automatically initiate charges on bill/invoice due dates (for customer apps where Finverse ingests bill/invoices via ERP integrations or API).  <br />  <br />Note: <code>autopay_enrollment_configurations</code> cannot be set when <code>future_payments</code> = <code>AUTOPAY</code> (since this already enforces autopay for all users; no autopay enrollment screen is shown).</td>\n</tr>\n<tr>\n<td>future_payments</td>\n<td>string ENUM, conditionally required</td>\n<td>Configures user consent for future payments, which will be displayed in the Finverse Link UI.  <br />  <br />Required if <code>mode</code> = <code>SETUP</code>, optional if mode = <code>PAYMENT</code>.  <br />  <br /><strong>Accepted values</strong>:  <br />- Not set (default): Future payments behaviour depends on payment method selected. (i) If user selects direct debit, the flow behaves like CLICK_TO_PAY; (ii) for all other payment methods, no payment method is saved. <em>Recommended for: 1-time payments.</em>  <br />  <br />- <code>AUTOPAY</code>: Saves user's payment method and allows future payments to be initiated off-session, without user input (see <code>POST /payments</code>). The Finverse Link UI flow will disclose to the user that autopay is enabled, and set <code>autopay_consent</code> = <code>true</code> for the user (sender). <em>Recommended for: automated recurring payments (fixed or variable timing/amount).</em>  <br />  <br />- <code>CLICK_TO_PAY</code> (BETA): Saves user's payment method, but future payments require user confirmation for each payment. This keeps <code>autopay_consent</code> = <code>false</code> for the user (sender). The Finverse Link UI will still suggest to the user to enable <code>AUTOPAY</code>, but not require it. Returning Payment Link users (identified by <code>external_user_id</code>) will be asked to confirm their payment, without having to re-enter payment method details. <em>Recommended for: recurring payments where users want to control when to pay.</em>  <br />  <br /><strong>Impact on payment methods displayed</strong>: see below.</td>\n</tr>\n<tr>\n<td>mandate_details</td>\n<td>object, optional</td>\n<td>Optional configurations for any direct debit mandate setup by the user. See below.  <br />  <br />If not used, the Payment Link will set default transaction limits for mandate payments, which may be too low for certain use-cases. Please review the default transaction limits documented in <code>POST /mandates</code> to ensure they are approproriate for your use case.</td>\n</tr>\n<tr>\n<td>payment_method_types</td>\n<td>array of string ENUMs, optional</td>\n<td>Optional parameter to explicitly specify the list of payment methods displayed to users in the Finverse Link UI.  <br />  <br />This parameter selects payment methods from the Customer App's list of available payment methods (contact Finverse to modify the available list).  <br />  <br />Other filters will be applied simultaneously (e.g. filtering payment methods for the desired payment currency and amount).  <br />  <br />Note: if the user has an existing stored payment method (mapped to its <code>external_user_id</code>), the Finverse Link UI will default to the stored payment method and not ask the user to select a new payment method.  <br />  <br /><strong>Accepted ENUM values:</strong> \"CARD\", \"MANDATE\", \"MANUAL\"</td>\n</tr>\n<tr>\n<td>recipient_account_filters</td>\n<td>object, optional</td>\n<td>Optional filter to narrow the list of settlement accounts receiving money. This is typically used for more complex payment scenarios, for example where a company has multiple receiving accounts (e.g. for different business units, or with different collection fee rules). See below.</td>\n</tr>\n<tr>\n<td>recurring_payment_mode</td>\n<td>string ENUM, optional</td>\n<td>Optional flag indicating whether the payment link is to be used for recurring payment(s).  <br />  <br />See also: Payment object (<code>payment_details.recurring_payment_mode</code>)  <br />  <br />Recurring payments may be eligible for discounted fees (contact <a href=\"https://mailto:sales@finverse.com\">sales@finverse.com</a> for details). Finverse may require a customer app to use this flag to qualify for agreed rates.  <br />  <br /><strong>Possible ENUM values:</strong>  <br />- <code>FIXED_SCHEDULE</code>: recurring payment collected on a fixed, regular schedule up to 1 year between payments (e.g. weekly, monthly, quarterly, annually), agreed to by the end-user. Payment amounts can be variable. Examples: subscriptions, monthly contract invoices, monthly rent, bills autopay.  <br />  <br />- <code>VARIABLE_RECURRING</code>: recurring payment collected on an adhoc/variable schedule. Payment amounts can be variable. Examples: usage-based contracts/tolls collected on a variable schedule, on-demand services (e.g. Uber, Deliveroo), wallet top-ups.  <br />  <br />- <code>NON_RECURRING</code>: non-recurring payments initiated by the end-user. Example: ecommerce purchase using a one-time or stored card.  <br />  <br />- <code>UNKNOWN</code>: value not defined.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"impact-of-future_payments-on-payment-methods-displayed\"><strong>Impact of</strong> <strong><code>future_payments</code></strong> <strong>on payment methods displayed</strong></h4>\n<p>When enabling <code>future_payments</code>:</p>\n<ul>\n<li><p>In <code>mode</code> = <code>SETUP</code>: the Finverse Link UI will only display payment methods which support recurring \"pull\" payments (e.g direct debit &amp; cards).</p>\n</li>\n<li><p>In <code>mode</code> = <code>PAYMENT</code>, the Finverse Link UI will continue to show all available payment methods, including one-time payment methods (in order to encourage payment completion).</p>\n<ul>\n<li><p>The future payments setting will only apply if the user selects a payment method which supports recurring payments (e.g. direct debit or cards).</p>\n</li>\n<li><p>To enable future payments and display only recurring payment methods, use the (optional) <code>payment_method_types</code> filter to explicitly limit the payment methods displayed.</p>\n</li>\n</ul>\n</li>\n</ul>\n<h3 id=\"autopay_enrollment_configurations-object-optional\">autopay_enrollment_configurations <strong>(object, optional)</strong></h3>\n<p>Configures the FInverse Link UI to enroll users into autopay (i.e. collects consent for future payments).</p>\n<p>This controls whether the Finverse UI will prompt users to opt-in to autopay, when autopay is not already enforced (i.e. when <code>future_payments</code> ≠ <code>AUTOPAY</code>).</p>\n<p>When a user consents to autopay, the payment user property <code>autopay_consent</code> is set to <code>true</code>, which allows:</p>\n<ul>\n<li><p>User can be charged for payments (using <code>POST /payments</code>) without obtaining additional user consent for each charge;</p>\n</li>\n<li><p>Finverse can automatically initiate charges on bill/invoice due dates (for customer apps where Finverse ingests bill/invoices via ERP integrations or API).</p>\n</li>\n</ul>\n<p>Note: <code>autopay_enrollment_configurations</code> cannot be set when <code>future_payments</code> = <code>AUTOPAY</code> (since this already enforces autopay for all users; no autopay enrollment screen is shown).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>display_enrollment_screen</td>\n<td>boolean, required</td>\n<td>Toggles the autopay enrollment screen on/off in Finverse Link.  <br />  <br />Default behaviour: <code>true</code>  <br />  <br />If <code>true</code>: autopay enrollment screen will be shown to users to ask users whether they consent to autopay.</td>\n</tr>\n<tr>\n<td>enrollment_prefill_value</td>\n<td>string ENUM, conditionally required</td>\n<td>Prefills the default user selection on the autopay enrollment screen.  <br />  <br /><strong>Default behaviour:</strong> <code>YES</code>  <br />  <br /><strong>Accepted values</strong>:  <br />- <code>YES</code>: autopay enrollment screen will prefill the \"YES\" option (to encourage opt-in). User will have to manually select \"NO\" to opt-out of autopay.  <br />  <br />- <code>NO</code>: autopay enrollment screen will prefill the \"NO\" option. User will have to manually select \"YES\" to opt-in to autopay.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"mandate_details-object-optional\">mandate_details (object, optional)</h3>\n<p>Optional configurations for any direct debit mandate setup by the user.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>description</td>\n<td>string, optional</td>\n<td>User-facing description for the mandate</td>\n</tr>\n<tr>\n<td>end_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>Expiration date of the mandate, e.g. 2022-12-31. Payment requests will be allowed up to this date (inclusive). All date inputs assume UTC times (e.g. if end_date = 2022-12-31, then a payment will be allowed until 2022-12-31 at 23:59:59 UTC). end_date must be equal to or greater than start_date (in UTC).</td>\n</tr>\n<tr>\n<td>payment_schedule</td>\n<td>object, optional</td>\n<td>RESERVED FOR FUTURE USE - Specifies scheduled auto-payments. See <code>POST /mandates</code>.</td>\n</tr>\n<tr>\n<td>start_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>Start date of the mandate, e.g. 2022-06-01. Payment requests will be allowed from this date onwards (inclusive). All date inputs assume UTC times (e.g. if start_date = 2022-06-01, then a payment will be allowed starting from 2022-06-01 at 00:00:00 UTC). start_date must be equal to or greater than today's date (in UTC).</td>\n</tr>\n<tr>\n<td>transaction_limits</td>\n<td>object, optional</td>\n<td>Specifies custom limits per payment transaction. See <code>POST /mandates</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"receipient_account_filters-object-optional\">receipient_account_filters (object, optional)</h3>\n<p>Optional filter to narrow the list of accounts receiving money (also called \"settlement accounts\"). This is typically used for more complex payment scenarios, for example when a Customer App needs multiple settlement accounts:</p>\n<ul>\n<li><p>For different business units, or</p>\n</li>\n<li><p>With different collection fee rules (e.g. with or without transaction fee surcharges paid by senders)</p>\n</li>\n</ul>\n<p>In these cases the Customer App can use <code>recipient_account_filters</code> to explicitly filter the receiving accounts matching its business requirements.</p>\n<p>Note: settlement accounts are configured by Finverse during initial onboarding of each Customer App. By default, Finverse creates 1 recipient account per payment method. Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> if you have complex payment flows, use cases or business units which may benefit from setting up multiple settlement accounts.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>business_unit</td>\n<td>string, conditionally required</td>\n<td>Business unit identifier/name the recipient account is associated with.  <br />  <br />Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> to configure your recipient accounts and business unit names.  <br />  <br />Note: required if no other recipient_account_filter is passed.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"sender-object-required\">sender (object, required)</h3>\n<p>Details on the sender of the payment.</p>\n<p>View More</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>email</td>\n<td>string, optional</td>\n<td>Sender's contact email, used for Finverse notifications.  <br />  <br />To ensure a smooth payment experience for end-users and to avoid support tickets or disputes, we strongly recommend enabling Finverse notifications by providing the end-user's email.  <br />  <br />Finverse sends email notifications for:  <br />- Changes to stored payment methods (e.g. direct debit mandate or card)  <br />- Changes to user autopay consent  <br />- Executed payments (except card payments via Stripe, since Stripe sends its own notifications).  <br />  <br />Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> for the full list of email notifications sent by Finverse.</td>\n</tr>\n<tr>\n<td>external_user_id</td>\n<td>string, required</td>\n<td>Customer App's unique ID for the sender.  <br />  <br />This ID is used to identify returning users across user sessions and load the user's previously stored Payment Method and settings. For example, a returning user can:  <br />- Directly pay a Payment Link (in <code>mode</code>= <code>payment</code>) using their stored Payment Method, without re-entering payment details. - Use a Payment Link to edit their stored Payment Method.  <br />- Use a Payment Link to turn Autopay on/off (by editing their Autopay consent), if allowed by the Customer App.</td>\n</tr>\n<tr>\n<td>name</td>\n<td>string, required</td>\n<td>Sender's name or nickname (note: this does not need to exactly match the accountholder name of the sender's account; however accountholder name inputs may be verified against this value).</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-fields\">Response fields</h2>\n<p>The response is a Payment Link object.</p>\n<p>Refer to Payment Link object data model in <code>GET /payments_links/{payment_link_id}</code>.</p>\n<h2 id=\"implementation-guidance\">Implementation guidance</h2>\n<h4 id=\"handling-retriesrevisit-and-avoiding-duplicate-payments-using-unique_reference_id-as-idempotency-key\"><strong>Handling retries/revisit and avoiding duplicate payments: using</strong> <strong><code>unique_reference_id as idempotency key</code></strong></h4>\n<ul>\n<li><p>To enable retries/revisit, Finverse allows creating payment links using a previously-used <code>unique_reference_id</code>, if all payment link details are identical (amount, etc). This returns the same payment link ID and URL as originally created. This allows using <code>unique_reference_id</code> similarly to an idempotency key.</p>\n</li>\n<li><p>To avoid duplicate payments, Finverse will only allow 1 executed payment per <code>unique_reference_id</code>.</p>\n</li>\n<li><p>When a user revisits a payment link, the Finverse Link UI will show end-users a “Payment in progress” screen if a payment is already pending for the same <code>unique_reference_id</code>.</p>\n<ul>\n<li>Example: if a user revisits a payment link after previously using the payment link to setup a direct debit mandate =&gt; the user will see \"Payment in progress\" if the direct debit mandate is still being processed; a payment will automatically be executed when the direct debit mandate becomes successful.</li>\n</ul>\n</li>\n<li><p><code>unique_reference_id</code> generation: we recommend generating <code>unique_reference_id</code> based on a composite/hash of the key payment details. The composite/hash should include any payment link details that could change between 2 user sessions, for example:</p>\n<ul>\n<li><p>Bill/invoice/purchase reference (<code>external_transaction_reference</code>)</p>\n</li>\n<li><p>Payment <code>amount</code></p>\n</li>\n<li><p>Sender details (<code>sender.name</code>, <code>sender.email</code>)</p>\n</li>\n<li><p>Metadata (<code>metadata</code>, <code>payment_metadata</code>).</p>\n</li>\n<li><p>This ensures that a new <code>unique_reference_id</code> is generated if any payment link details are modified (for example if the amount is updated or if the user changes their name/email between 2 user sessions).</p>\n</li>\n</ul>\n</li>\n<li><p>If a payment link creation request is sent using an existing <code>unique_reference_id</code> but different payment link details, the following API error will be returned:</p>\n</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">// HTTP 400 Bad Request\n{\n    \"error\": {\n        \"details\": \"Trying to update existing paymentLink. Not supported.\",\n        \"error_code\": \"INVALID_PARAMETER\",\n        \"message\": \"The parameters provided are invalid. See details.\",\n        \"request_id\": \"1689652320\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n","urlObject":{"path":["payment_links",""],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"09321f56-d7ec-4b71-a188-04ee67ba863c","name":"Success (payment mode, future payments disabled)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 10000,\n    \"currency\": \"HKD\",\n    \"link_customizations\": {\n        \"countries\": [],\n        \"institution_status\": \"\",\n        \"language\": \"en\",\n        \"link_mode\": \"\",\n        \"redirect_uri\": \"\",\n        \"ui_mode\": \"\"\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    },\n    \"mode\": \"PAYMENT\",\n    \"payment_details\": {\n        \"description\": \"TEST Payment\",\n        \"external_transaction_reference\": \"INV12345\"\n    },\n    \"payment_metadata\": {\n        \"key\": \"value\",\n        \"contract_id\": \"1234\",\n        \"storeganise_invoice_ids\": \"ABCD\", // Required for Storeganise self-storage ERP integrations (custom integration, contact support@finverse.com to setup)\n        \"user_address\": \"1 Admiralty Drive\", // Required for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n\t    \"user_city\": \"Hong Kong\", // Required for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n\t    \"user_country\": \"HK\", // Required for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n\t    \"user_first_name\": \"John\", // Optional for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n\t    \"user_last_name\": \"Doe\" // Optional for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n    },\n    // \"integration_metadata\": {\n    //     \"integration_id\": \"RAPIDSTOR\", \n    //     \"rapidstor_metadata\": {  // Required for Sitelink/Rapidstor self-storage ERP integrations (custom integration, contact support@finverse.com to setup)\n    //         \"corp_code\": \"{{corp_code}}\",\n    //         \"s_location_code\": \"{{s_location_code}}\",\n    //         \"tenant_id\": \"{{tenant_id}}\"\n    //     }\n    // },\n    // \"payment_setup_options\": {\n    //     \"future_payments\": \"CLICK_TO_PAY\",\n    //      \"mandate_details\": {\n    //          \"description\": \"Test Mandate\",\n    //          \"end_date\": \"2024-03-01\",\n    //          \"start_date\": \"{{today}}\",\n    //          \"transaction_limits\": {\n    //              \"max_period_amount\": 10000,\n    //              \"max_period_count\": 10,\n    //              \"max_transaction_amount\": {{max_trx_amount_in_minor}},\n    //              \"period\": \"MONTHLY\"\n    //          }\n    //      },\n    //      \"payment_method_types\": [\"CARD\", \"MANDATE\", \"MANUAL\"]\n    //      \"recipient_account_filters\": {\n    //          \"business_unit\": \"BRANCH 1\"\n    //    }\n    //},\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1777634238\",\n        \"name\": \"John Doe\"\n    },\n    \"unique_reference_id\":\"Inv12345|1777634238\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_links/"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1731039033"},{"key":"Date","value":"Fri, 08 Nov 2024 04:10:33 GMT"},{"key":"Content-Length","value":"930"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 10000,\n    \"created_at\": \"2024-11-08T04:10:33.481Z\",\n    \"currency\": \"HKD\",\n    \"link_customizations\": {\n        \"language\": \"en\"\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    },\n    \"mode\": \"PAYMENT\",\n    \"payment_details\": {\n        \"description\": \"TEST Payment\",\n        \"external_transaction_reference\": \"INV12345\"\n    },\n    \"payment_link_id\": \"01JC4ZEY49TPX2TQXXXTWB37AT\",\n    \"payment_metadata\": {\n        \"contract_id\": \"1234\",\n        \"key\": \"value\",\n        \"storeganise_invoice_ids\": \"ABCD\",\n        \"user_address\": \"1 Admiralty Drive\",\n        \"user_city\": \"Hong Kong\",\n        \"user_country\": \"HK\",\n        \"user_first_name\": \"John\",\n        \"user_last_name\": \"Doe\"\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1731039033\",\n        \"name\": \"John Doe\",\n        \"user_id\": \"01JC4ZEY4Q7TGG1MGAYQZC6P4B\"\n    },\n    \"session_status\": \"OPEN\",\n    \"status\": \"CREATED\",\n    \"unique_reference_id\": \"Inv12345|1731039033\",\n    \"updated_at\": \"2024-11-08T04:10:33.481Z\",\n    \"url\": \"https://pay.prod.finverse.net/link/01JC4ZEY49TPX2TQXXXTWB37AT\"\n}"},{"id":"a57a68fe-fb2a-4697-9340-ccd674725175","name":"Success (payment mode, future payments enabled)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 10000,\n    \"currency\": \"HKD\",\n    \"link_customizations\": {\n        \"countries\": [],\n        \"institution_status\": \"\",\n        \"language\": \"en\",\n        \"link_mode\": \"\",\n        \"redirect_uri\": \"\",\n        \"ui_mode\": \"\"\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    },\n    \"mode\": \"PAYMENT\",\n    \"payment_details\": {\n        \"description\": \"TEST Payment\",\n        \"external_transaction_reference\": \"INV12345\"\n    },\n    \"payment_metadata\": {\n        \"key\": \"value\",\n        \"contract_id\": \"1234\",\n        \"storeganise_invoice_ids\": \"ABCD\", // Required for Storeganise self-storage ERP integrations (custom integration, contact support@finverse.com to setup)\n        \"user_address\": \"1 Admiralty Drive\", // Required for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n\t    \"user_city\": \"Hong Kong\", // Required for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n\t    \"user_country\": \"HK\", // Required for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n\t    \"user_first_name\": \"John\", // Optional for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n\t    \"user_last_name\": \"Doe\" // Optional for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n    },\n    // \"integration_metadata\": {\n    //     \"integration_id\": \"RAPIDSTOR\", \n    //     \"rapidstor_metadata\": {  // Required for Sitelink/Rapidstor self-storage ERP integrations (custom integration, contact support@finverse.com to setup)\n    //         \"corp_code\": \"{{corp_code}}\",\n    //         \"s_location_code\": \"{{s_location_code}}\",\n    //         \"tenant_id\": \"{{tenant_id}}\"\n    //     }\n    // },\n    \"payment_setup_options\": {\n        \"future_payments\": \"CLICK_TO_PAY\",\n    //      \"mandate_details\": {\n    //          \"description\": \"Test Mandate\",\n    //          \"end_date\": \"2024-03-01\",\n    //          \"start_date\": \"{{today}}\",\n    //          \"transaction_limits\": {\n    //              \"max_period_amount\": 10000,\n    //              \"max_period_count\": 10,\n    //              \"max_transaction_amount\": {{max_trx_amount_in_minor}},\n    //              \"period\": \"MONTHLY\"\n    //          }\n    //      },\n        \"payment_method_types\": [\"CARD\", \"MANDATE\", \"MANUAL\"]\n    //      \"recipient_account_filters\": {\n    //          \"business_unit\": \"BRANCH 1\"\n    //    }\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1777634238\",\n        \"name\": \"John Doe\"\n    },\n    \"unique_reference_id\":\"Inv12345|1777634238\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_links/"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1731039139"},{"key":"Date","value":"Fri, 08 Nov 2024 04:12:19 GMT"},{"key":"Content-Length","value":"1040"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 10000,\n    \"created_at\": \"2024-11-08T04:12:19.103Z\",\n    \"currency\": \"HKD\",\n    \"link_customizations\": {\n        \"language\": \"en\"\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    },\n    \"mode\": \"PAYMENT\",\n    \"payment_details\": {\n        \"description\": \"TEST Payment\",\n        \"external_transaction_reference\": \"INV12345\"\n    },\n    \"payment_link_id\": \"01JC4ZJ58ZKXPVDSPDKCP27FKM\",\n    \"payment_metadata\": {\n        \"contract_id\": \"1234\",\n        \"key\": \"value\",\n        \"storeganise_invoice_ids\": \"ABCD\",\n        \"user_address\": \"1 Admiralty Drive\",\n        \"user_city\": \"Hong Kong\",\n        \"user_country\": \"HK\",\n        \"user_first_name\": \"John\",\n        \"user_last_name\": \"Doe\"\n    },\n    \"payment_setup_options\": {\n        \"future_payments\": \"CLICK_TO_PAY\",\n        \"payment_method_types\": [\n            \"CARD\",\n            \"MANDATE\",\n            \"MANUAL\"\n        ]\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1731039139\",\n        \"name\": \"John Doe\",\n        \"user_id\": \"01JC4ZJ5998NHNZ0CV6KNSYECF\"\n    },\n    \"session_status\": \"OPEN\",\n    \"status\": \"CREATED\",\n    \"unique_reference_id\": \"Inv12345|1731039139\",\n    \"updated_at\": \"2024-11-08T04:12:19.103Z\",\n    \"url\": \"https://pay.prod.finverse.net/link/01JC4ZJ58ZKXPVDSPDKCP27FKM\"\n}"},{"id":"dc358b9c-0a0e-4beb-9133-53effe77bac2","name":"Error (reused unique_reference_id with different request body)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 200001,\n    \"currency\": \"HKD\",\n    \"language\": \"en\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    },\n    \"mode\": \"PAYMENT\",\n    \"payment_details\": {\n        \"description\": \"TEST Monthly fee\",\n        \"external_transaction_reference\": \"INV12345\"\n    },\n    \"payment_metadata\": {\n        \"key\": \"value\",\n        \"contract_id\": \"1234\"\n    },\n    \"recipient_account\": {\n        \"recipient_account_id\": \"contact_finverse_support\"\n    },\n    \"sender\": {\n        \"email\": \"name@example.com\",\n        \"external_user_id\": \"user_id_1\",\n        \"name\": \"{{sender_accountholder_name}}\"\n    },\n    \"unique_reference_id\":\"INV12345\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_links/"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1689652320"},{"key":"Date","value":"Tue, 18 Jul 2023 03:51:59 GMT"},{"key":"Content-Length","value":"218"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"Trying to update existing paymentLink. Not supported.\",\n        \"error_code\": \"INVALID_PARAMETER\",\n        \"message\": \"The parameters provided are invalid. See details.\",\n        \"request_id\": \"1689652320\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"58940825-4306-4033-8a7c-7de0da98c9c1","name":"Error (mismatch between existing sender name and external_user_id)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 200001,\n    \"currency\": \"HKD\",\n    \"language\": \"en\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    },\n    \"mode\": \"PAYMENT\",\n    \"payment_details\": {\n        \"description\": \"TEST Monthly fee\",\n        \"external_transaction_reference\": \"INV12345\"\n    },\n    \"payment_metadata\": {\n        \"key\": \"value\",\n        \"contract_id\": \"1234\"\n    },\n    \"recipient_account\": {\n        \"recipient_account_id\": \"contact_finverse_support\"\n    },\n    \"sender\": {\n        \"email\": \"name@example.com\",\n        \"external_user_id\": \"user_id_1\",\n        \"name\": \"{{sender_accountholder_name}}\"\n    },\n    \"unique_reference_id\":\"INV12345\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_links/"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1689652320"},{"key":"Date","value":"Tue, 18 Jul 2023 03:51:59 GMT"},{"key":"Content-Length","value":"218"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"Sender external_user_id already exists, but matches a different sender name. Please check your sender inputs or provide a new sender external_user_id.\",\n        \"error_code\": \"INVALID_PARAMETER\",\n        \"message\": \"The parameters provided are invalid. See details.\",\n        \"request_id\": \"1689652320\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"9dc2b33a-4302-40e3-977b-5c197a3b178d"},{"name":"/payment_links (Create Payment Link in Setup Mode)","event":[{"listen":"test","script":{"id":"4764f3d4-b10d-4c6e-a628-74f942113a36","exec":["var jsonData = pm.response.json();","","if(jsonData.payment_link_id) {","    pm.environment.set(\"payment_link_id\", jsonData.payment_link_id)","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payment Link ID or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"payment_link_id\",","        \"error\"","    )","});","","//Payment Link status is CREATED","pm.test(\"Payment Link status is CREATED\", function() {","    pm.expect(jsonData.status).to.equal(\"CREATED\")","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"amount\": {\"type\":\"integer\"},","            \"created_at\": {\"type\":\"string\"},","            \"currency\": {\"type\":\"string\"},","            \"integration_metadata\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"integration_id\": {\"type\":\"string\"},","                    \"rapidstor_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_token\": {\"type\":\"string\"},","                            \"corp_code\": {\"type\":\"string\"},","                            \"i_anniv_days\": {\"type\":\"integer\"}, ","                            \"s_location_code\": {\"type\":\"string\"},","                            \"tenant_default_currency\": {\"type\":\"string\"},","                            \"tenant_id\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"account_token\",","                            \"corp_code\",","                            \"s_location_code\",","                            \"tenant_id\"","                        ]","                    }","                },","                \"required\": [","                    \"integration_id\"","                ]","            },","            \"link_customizations\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"countries\": {\"type\":\"array\"},","                    \"institution_status\": {\"type\":\"string\"},","                    \"language\": {","                        \"type\":\"string\",","                        \"enum\": [\"en\", \"ko\", \"vi\", \"zh\"]","                    },","                    \"link_mode\": {\"type\":\"string\"},","                    \"redirect_uri\": {\"type\":\"string\"},","                    \"ui_mode\": {","                        \"type\":\"string\",","                        \"enum\": [\"redirect\", \"standalone\", \"iframe\"]","                    }","                },","                \"required\": []","            },","            \"metadata\": {\"type\":\"object\"},","            \"mode\": {  ","                \"type\":\"string\",","                \"enum\": [\"PAYMENT\", \"SETUP\"]","            },","            \"payment\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"amount\": {\"type\":\"integer\"},","                    \"amount_total_with_surcharge\": {\"type\":\"integer\"},","                    \"created_at\": {\"type\":\"string\"},","                    \"currency\": {\"type\":\"string\"},","                    \"error\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"details\": {\"type\":\"string\"},","                            \"error_code\": {\"type\":\"string\"},","                            \"message\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                            }","                        },","                        \"required\": [","                            \"error_code\",","                            \"message\",","                            \"type\"","                        ] ","                    },","                    \"fees\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"amount\": {\"type\":\"integer\"},","                                \"currency\": {\"type\":\"string\"},","                                \"paid_by\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                },","                                \"paid_by_account_id\": {\"type\":\"string\"}","                            },","                            \"required\": [","                                \"amount\", ","                                \"currency\", ","                                \"paid_by\", ","                                \"paid_by_account_id\"","                            ]","                        }","                    },","                    \"metadata\": {\"type\":\"object\"},","                    \"payment_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"collection_entity_name\": {\"type\":\"string\"},","                            \"description\": {\"type\":\"string\"},","                            \"external_transaction_reference\": {\"type\": \"string\"},","                            \"mandate_id\": {\"type\":\"string\"},","                            \"processor_entity_name\": {\"type\":\"string\"},","                            \"processor_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"auth_code\": {\"type\":\"string\"},","                                    \"processor_id\": {\"type\":\"string\"},","                                    \"processor_reference\": {\"type\":\"string\"},","                                    \"result\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"decline_code\": {\"type\":\"string\"},","                                            \"decline_reason\": {\"type\":\"string\"},","                                            \"last_action\": {\"type\":\"string\"},","                                            \"result_code\": {\"type\":\"string\"},","                                            \"status\": {\"type\":\"string\"}","                                        },","                                        \"required\": [","                                           \"processor_id\"","                                        ]","                                    },","                                },","                                \"required\": []","                            },","                            \"recurring_payment_mode\": {","                                \"type\":\"string\",","                                \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                            },                       ","                            \"references\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"bank_transaction_reference\": {\"type\":\"string\"},","                                    \"dda_reference\": {\"type\":\"string\"},","                                    \"finverse_transaction_reference\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                            \"transaction_reference_id\": {\"type\": \"string\"} // TO BE DEPRECATED","                            },","                        \"required\": [","                            \"description\",","                            \"external_transaction_reference\"","                        ]","                    },","                    \"payment_id\": {\"type\":\"string\"},","                    \"payment_method\": { // SIMPLIFIED PAYMENT METHOD OBJECT -- TO BE EXPANDED LATER INTO FULL PAYMENT_METHOD OBJECT","                        \"type\": \"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"card\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"card_details\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"brand\": {\"type\":\"string\"},","                                            \"collection_entity_name\": {\"type\":\"string\"},","                                            \"country\": {\"type\":\"string\"},","                                            \"expiry_month\": {\"type\":\"integer\"},","                                            \"expiry_year\": {\"type\":\"integer\"}, ","                                            \"fingerprint\": {\"type\":\"string\"},","                                            \"finverse_authorization_reference\": {\"type\":\"string\"},","                                            \"funding\": {","                                                \"type\":\"string\",","                                                \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                                            },","                                            \"is_commercial\": {\"type\":\"boolean\"},","                                            \"last4\": {\"type\":\"string\"},","                                            \"processor_entity_name\": {\"type\":\"string\"},","                                            \"processor_details\": {","                                                \"type\":\"object\",","                                                \"additionalProperties\": false,","                                                \"properties\": {","                                                    \"auth_code\": {\"type\":\"string\"},","                                                    \"processor_id\": {\"type\":\"string\"},","                                                    \"processor_reference\": {\"type\":\"string\"},","                                                    \"token_id\": {\"type\":\"string\"},","                                                },","                                                \"required\": []","                                            },","                                            \"recurring_payment_mode\": {","                                                \"type\":\"string\",","                                                \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                                            }","                                        },","                                        \"required\": []","                                    }","                                },","                                \"required\": []","                            }","                        },","                        \"required\": [ ]","                    },","                    \"payment_method_id\":  {\"type\":\"string\"}, // TBD: MAY BE DEPRECATED LATER ONCE INCLUDED IN FULL PAYMENT_METHOD OBJECT","                    \"recipient\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"name\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"name\"","                        ]","                    },","                    \"recipient_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            }","                        },","                        \"required\": [","                            \"account_id\",","                            \"account_type\"","                        ]","                    },","                    \"sender\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"external_user_id\": {\"type\":\"string\"},","                            \"name\": {\"type\":\"string\"},","                            \"user_details\": {","                                \"type\":[\"array\",\"null\"],","                                \"items\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"details_type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                        },","                                        \"values\": {","                                            \"type\": \"array\",","                                            \"items\": {","                                                \"type\": \"string\"","                                            }","                                        }","                                    },","                                    \"required\": [","                                        \"details_type\",","                                        \"values\"","                                    ]","                                }","                            },","                            \"user_id\": {\"type\":\"string\"},","                            \"user_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                            }","                        },","                        \"required\": [","                            \"external_user_id\",","                            //\"name\", // TO BE ENFORCED","                            \"user_id\",","                            \"user_type\"","                        ]","                    },","                    \"sender_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_number\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"number\": {\"type\":\"string\"},","                                    \"type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"IBAN\", \"LOCAL\"]","                                    }","                                },","                                \"required\": [","                                    \"number\",","                                    \"type\"","                                ]","                            },","                            \"account_number_masked\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            },","                            \"accountholder_name\": {\"type\":\"string\"},","                            \"bank_code\": {\"type\":\"string\"},","                            \"institution_id\": {\"type\":\"string\"},","                            \"institution_name\": {\"type\":\"string\"},","                            \"user_id\": {\"type\":\"string\"},","                        },","                        \"required\": [","                            \"account_type\",","                            \"user_id\"","                        ]","                    },","                    \"status\": {","                        \"type\":\"string\",","                        \"enum\": [\"CREATED\", \"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"SUBMITTED\", \"EXECUTED\", \"CANCELLED\", \"FAILED\"]","                    },","                    \"surcharge_amount\": {\"type\":\"integer\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"CARD\", \"MANDATE\", \"MANUAL\", \"SINGLE\"]","                    },","                    \"updated_at\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"amount\",","                    \"amount_total_with_surcharge\",","                    \"created_at\",","                    \"currency\",","                    \"fees\",","                    \"payment_details\",","                    \"payment_id\",","                    //\"payment_method\", // TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT METHOD","                    //\"payment_method_id\", // TBC: TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT_METHOD_ID","                    \"recipient\",","                    \"recipient_account\",","                    \"sender\",","                    \"status\",","                    \"surcharge_amount\",","                    \"type\",","                    \"updated_at\"","                ]","            },","            \"payment_details\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"description\": {\"type\":\"string\"},","                    \"external_transaction_reference\": {\"type\":\"string\"}","                    },","                \"required\": []","            },","            \"payment_link_id\": {\"type\":\"string\"},","            \"payment_metadata\": {\"type\":\"object\"},","            \"payment_method\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"card\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"card_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"acquirer_authorization_reference\": {\"type\":\"string\"},","                                    \"brand\": {\"type\":\"string\"},","                                    \"brand_product_name\": {\"type\":\"string\"},","                                    \"card_number_alias\": {\"type\":\"string\"},","                                    \"collection_entity_name\": {\"type\":\"string\"},","                                    \"country\": {\"type\":\"string\"},","                                    \"expiry_month\": {\"type\":\"integer\"},","                                    \"expiry_year\": {\"type\":\"integer\"}, ","                                    \"fingerprint\": {\"type\":\"string\"},","                                    \"finverse_authorization_reference\": {\"type\":\"string\"},","                                    \"funding\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                                    },","                                    \"is_commercial\": {\"type\":\"boolean\"},","                                    \"last4\": {\"type\":\"string\"},","                                    \"processor_entity_name\": {\"type\":\"string\"},","                                    \"processor_details\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"auth_code\": {\"type\":\"string\"},","                                            \"processor_id\": {\"type\":\"string\"},","                                            \"processor_reference\": {\"type\":\"string\"},","                                            \"token_id\": {\"type\":\"string\"},","                                        },","                                        \"required\": []","                                    },","                                    \"recurring_payment_mode\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                                    }","                                },","                                \"required\": []","                            },","                            \"created_at\": {\"type\":\"string\"},","                            \"recipient_account\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"account_id\": {\"type\":\"string\"},","                                    \"account_type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                    }","                                },","                                \"required\": [\"account_id\", \"account_type\"]","                            },","                            \"risk_data\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"processor_risk_data\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"browser_type\": {\"type\":\"string\"},","                                            \"device_type\": {\"type\":\"string\"},","                                            \"shopper_country\": {\"type\":\"string\"},","                                            \"shopper_ip\": {\"type\":\"string\"},","                                            \"shopper_locale\": {\"type\":\"string\"}","                                        },","                                        \"required\": []","                                    },","                                },","                                \"required\": []","                            },","                            \"status\": {","                                \"type\":\"string\",","                                \"enum\": [\"PROCESSING\", \"SUCCEEDED\", \"CANCELLED\"]","                            },","                            \"updated_at\": {\"type\":\"string\"},","                        },","                        \"required\" : [","                            \"created_at\",","                            \"status\",","                            \"updated_at\"","                        ]","                    },","                    \"integration_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"adyen_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"auth_code\": {\"type\":\"string\"},","                                    \"payment_method_id\": {\"type\":\"string\"},","                                    \"psp_reference\": {\"type\":\"string\"}, ","                                    \"recurring_processing_model\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"payment_method_id\",","                                    \"recurring_processing_model\"","                                ]","                            },","                            \"cybersource_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"payment_token\": {\"type\":\"string\"}  ","                                },","                                \"required\": [","                                    \"payment_token\"","                                ]","                            },","                            \"gocardless_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"funds_settlement\": {\"type\":\"string\"},","                                    \"last_action\":  {\"type\":\"string\"},","                                    \"mandate_id\": {\"type\":\"string\"},","                                    \"next_possible_charge_date\": {\"type\":\"string\"}, ","                                    \"payments_require_approval\": {\"type\":\"boolean\"},","                                    \"reference\": {\"type\":\"string\"},","                                    \"scheme\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"mandate_id\"","                                ]","                            },","                            \"integration_id\": {\"type\":\"string\"},","                            \"stripe_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"customer\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"id\": {\"type\":\"string\"}","                                        },","                                        \"required\": [\"id\"] ","                                    },","                                    \"payment_method\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"id\": {\"type\":\"string\"}","                                        },","                                        \"required\": [\"id\"] ","                                    },","                                },","                                \"required\": [","                                    \"customer\",","                                    \"payment_method\"","                                ]","                            }","                        },","                        \"required\": [","                            \"integration_id\"","                        ]","                    },","                    \"mandate\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"created_at\": {\"type\":\"string\"},  ","                            \"error\": {","                                \"type\": \"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"details\": {\"type\":\"string\"},","                                    \"error_code\": {\"type\":\"string\"},","                                    \"message\": {\"type\":\"string\"},","                                    \"request_id\": {\"type\":\"string\"},","                                    \"type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                                    }","                                },","                                \"required\" : [","                                    \"error_code\",","                                    \"message\",","                                    \"request_id\",","                                    \"type\"","                                ]","                            },","                            \"fees\": {","                                \"type\":\"array\",","                                \"items\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"amount\": {\"type\":\"integer\"},","                                        \"currency\": {\"type\":\"string\"},","                                        \"paid_by\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                        },","                                        \"paid_by_account_id\": {\"type\":\"string\"}","                                    },","                                    \"required\": [","                                        \"amount\", ","                                        \"currency\", ","                                        \"paid_by\", ","                                        \"paid_by_account_id\"","                                    ]","                                }","                            },","                            \"mandate_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"collection_entity_name\": {\"type\":\"string\"},","                                    \"currency\": {\"type\":\"string\"},","\t\t\t                        \"dda_reference\": {\"type\":\"string\"},","                                    \"description\": {\"type\":\"string\"},","                                    \"end_date\": {\"type\":\"string\"},","                                    \"mandate_bank_reference\": {\"type\":\"string\"},","                                    \"payment_schedule\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"amount\": {\"type\":\"integer\"},","                                            \"frequency\": {\"type\":\"string\"}","                                        },","                                        \"required\": [","                                            \"amount\",","                                            \"frequency\"","                                        ]","                                    },","                                    \"processor_entity_name\": {\"type\":\"string\"},","                                    \"start_date\": {\"type\":\"string\"},","                                    \"transaction_limits\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"max_period_amount\": {\"type\":\"integer\"},","                                            \"max_period_count\": {\"type\":\"integer\"},","                                            \"max_transaction_amount\": {\"type\":\"integer\"},","                                            \"max_transaction_amount_set_by_payer_initial\": {\"type\":\"integer\"},","                                            \"period\": {\"type\":\"string\"}","                                        },","                                        \"required\": []","                                    }","                                },","                                \"required\": [","                                    \"currency\",","                                    \"description\"","                                ]","                            },","                            \"mandate_id\": {\"type\":\"string\"},","                            \"metadata\": {\"type\":\"object\"},","                            \"payment_method_id\": {\"type\":\"string\"},","                            \"recipient\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"name\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"name\"","                                ]","                            },","                            \"recipient_account\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"account_id\": {\"type\":\"string\"},","                                    \"account_type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                    },","                                    \"name\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"account_id\",","                                    \"account_type\"","                                ]","                            },","                            \"sender\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"external_user_id\": {\"type\":\"string\"},","                                    \"name\": {\"type\":\"string\"},","                                    \"user_details\": {","                                        \"type\":[\"array\",\"null\"],","                                        \"items\": {","                                            \"type\":\"object\",","                                            \"additionalProperties\": false,","                                            \"properties\": {","                                                \"details_type\": {","                                                    \"type\":\"string\",","                                                    \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                                },","                                                \"values\": {","                                                    \"type\": \"array\",","                                                    \"items\": {","                                                        \"type\": \"string\"","                                                    }","                                                }","                                            },","                                            \"required\": [","                                                \"details_type\",","                                                \"values\"","                                            ]","                                        }","                                    },","                                    \"user_id\": {\"type\":\"string\"},","                                    \"user_type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                                    }","                                },","                                \"required\": [","                                    \"external_user_id\",","                                    //\"name\", // TO BE ENFORCED","                                    \"user_id\",","                                    \"user_type\"","                                ]","                            },","                            \"sender_account\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"account_id\": {\"type\":\"string\"},","                                    \"account_number\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"number\": {\"type\":\"string\"},","                                            \"type\": {","                                                \"type\":\"string\",","                                                \"enum\": [\"IBAN\", \"LOCAL\"]","                                            }","                                        },","                                        \"required\": [","                                            \"number\",","                                            \"type\"","                                        ]","                                    },","                                    \"account_number_masked\": {\"type\":\"string\"},","                                    \"account_type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                    },","                                    \"accountholder_name\": {\"type\":\"string\"},","                                    \"bank_code\": {\"type\":\"string\"},","                                    \"institution_id\": {\"type\":\"string\"},","                                    \"institution_name\": {\"type\":\"string\"},","                                    \"user_id\": {\"type\":\"string\"},","                                },","                                \"required\": [","                                    \"account_type\",","                                    \"user_id\"","                                ]","                            },","                            \"status\": {","                                \"type\":\"string\",","                                \"enum\": [\"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"FAILED\"]","                            },","                            \"updated_at\": {\"type\":\"string\"}","                        },","                        \"required\" : [","                            \"created_at\",","                            \"fees\",","                            \"mandate_details\",","                            \"mandate_id\",","                            \"payment_method_id\",","                            \"recipient\",","                            \"sender\",","                            \"status\",","                            \"updated_at\"","                        ]","                    },","                    \"payment_method_id\": {\"type\": \"string\"},","                    \"payment_method_type\": {","                        \"type\": \"string\",","                        \"enum\": [\"CARD\", \"MANDATE\"]","                    }","                },","                \"if\": {","                    \"properties\": {","                        \"payment_method_type\": {\"const\": \"CARD\"}","                    }","                },","                \"then\": {","                    \"required\" : [","                        \"card\",","                        \"payment_method_id\",","                        \"payment_method_type\"","                    ]","                },","                \"if\": {","                    \"properties\": {","                        \"payment_method_type\": {\"const\": \"MANDATE\"}","                    }","                },","                \"then\": {","                    \"required\" : [","                        \"mandate\",","                        \"payment_method_id\",","                        \"payment_method_type\"","                    ]","                }","            },","            \"payment_setup_options\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"autopay_enrollment_configuration\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"display_enrollment_screen\": {\"type\":\"boolean\"},","                            \"enrollment_prefill_value\": {","                                \"type\":\"string\",","                                \"enum\": [\"YES\", \"NO\", \"\"]","                            }","                        },","                        \"required\": [","                            \"display_enrollment_screen\"","                        ]","                    },","                    \"future_payments\": {","                        \"type\":\"string\",","                        \"enum\": [\"AUTOPAY\", \"CLICK_TO_PAY\"]","                    },","                    \"mandate_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"description\": {\"type\":\"string\"},","                            \"end_date\": {\"type\":\"string\"},","                            \"payment_schedule\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"amount\": {\"type\":\"integer\"},","                                    \"frequency\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"amount\",","                                    \"frequency\"","                                ]","                            },","                            \"start_date\": {\"type\":\"string\"},","                            \"transaction_limits\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"max_period_amount\": {\"type\":\"integer\"},","                                    \"max_period_count\": {\"type\":\"integer\"},","                                    \"max_transaction_amount\": {\"type\":\"integer\"},","                                    \"period\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"max_transaction_amount\"","                                ]","                            }","                        },","                        \"required\": []","                    },","                    \"payment_method_types\": {","                        \"type\":\"array\",","                        \"additionalProperties\": false,","                        \"items\": {","                            \"additionalProperties\": false,","                            \"type\":\"string\",","                            \"enum\": [\"CARD\", \"MANDATE\", \"MANUAL\"]","                        }","                    },","                    \"recipient_account_filters\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"business_unit\": {\"type\":\"string\"}","                        },","                        \"required\": []","                    },","                    \"recurring_payment_mode\": {","                        \"type\":\"string\",","                        \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                    }","                },","                \"required\": [","                    \"autopay_enrollment_configuration\",","                    \"recurring_payment_mode\"","                ]","            },","            \"sender\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"email\": {\"type\":\"string\"},","                    \"external_user_id\": {\"type\":\"string\"},","                    \"name\": {\"type\":\"string\"},","                    \"user_details\": {","                        \"type\":[\"array\",\"null\"],","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                },","                                \"values\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"type\": \"string\"","                                    }","                                }","                            },","                            \"required\": [","                                \"details_type\",","                                \"values\"","                            ]","                        }","                    },","                    \"user_id\": {\"type\":\"string\"},","                    \"user_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                    }","                },","                \"required\": [","                    \"external_user_id\",","                    //\"name\", // TO BE ENFORCED","                    \"user_id\",","                ]","            },","            \"session_status\": {","                \"type\":\"string\",","                \"enum\": [\"OPEN\", \"PROCESSING\", \"COMPLETE\", \"FAILED\"]","            },","            \"status\": {","                \"type\":\"string\",","                \"enum\": [\"CREATED\", \"CANCELLED\", \"PAID\", \"SETUP_SUCCEEDED\"]","            },","            \"unique_reference_id\": {\"type\":\"string\"},","            \"updated_at\": {\"type\":\"string\"},","            \"url\": {\"type\":\"string\"}","        },","        \"if\": {","            \"properties\": {","                \"mode\": {\"const\": \"PAYMENT\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"amount\",","                \"created_at\",","                \"currency\",","                \"mode\",","                \"payment_link_id\",","                \"sender\",","                \"session_status\",","                \"status\",","                \"updated_at\",","                \"unique_reference_id\",","                \"url\"","            ]","        },","        \"if\": {","            \"properties\": {","                \"mode\": {\"const\": \"SETUP\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"created_at\",","                \"currency\",","                \"mode\",","                \"payment_link_id\",","                \"payment_setup_options\",","                \"sender\",","                \"session_status\",","                \"status\",","                \"updated_at\",","                \"unique_reference_id\",","                \"url\"","            ]","        }","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}},{"listen":"prerequest","script":{"id":"e5c3eb22-5e1c-4bb3-9e47-46bd08e86c4a","exec":[""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"05b04ea0-d9de-47c0-86d9-f2800c0b3050","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"body":{"mode":"raw","raw":"{\n    \"currency\": \"HKD\",\n    //\"integration_metadata\": {\n    //     \"integration_id\": \"RAPIDSTOR\",\n    //     \"rapidstor_metadata\": {\n    //        \"account_token\": \"{{rapidstor_account_token}}\",\n    //         \"corp_code\": \"{{corp_code}}\",\n    //         \"s_location_code\": \"{{s_location_code}}\",\n    //         \"tenant_id\": \"{{tenant_id}}\"\n    //     }\n    // },\n    \"link_customizations\": {\n        \"countries\": [],\n        \"institution_status\": \"\",\n        \"language\": \"en\",\n        \"link_mode\": \"\",\n        \"redirect_uri\": \"\",\n        \"ui_mode\": \"\"\n    },\n    // \"metadata\": {\n    //     \"key\": \"value\",\n    //     \"tracking_flow\": \"webapp-checkout\"\n    // },\n    \"mode\": \"SETUP\",\n    // \"payment_metadata\": {\n    //     \"user_address\": \"1 Admiralty Drive\", // Required for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n\t//     \"user_city\": \"Hong Kong\", // Required for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n\t//     \"user_country\": \"HK\", // Required for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n\t//     \"user_first_name\": \"John\", // Optional for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n\t//     \"user_last_name\": \"Doe\" // Optional for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n    // },\n    \"payment_setup_options\": {\n        \"future_payments\": \"AUTOPAY\"\n//        \"mandate_details\": {\n//            \"description\": \"Test Mandate\",\n//            \"end_date\": \"2024-03-01\",\n//            \"start_date\": \"{{today}}\",\n//            \"transaction_limits\": {\n//                \"max_period_amount\": 10000,\n//                \"max_period_count\": 10,\n//                \"max_transaction_amount\": {{max_trx_amount_in_minor}},\n//                \"period\": \"MONTHLY\"\n//            }\n//        },\n//        \"payment_method_types\": [\"CARD\", \"MANDATE\"]\n//        \"recipient_account_filters\": {\n//            \"business_unit\": \"BRANCH 1\"\n//        }\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1777634238\",\n        \"name\": \"John Doe\"\n    },\n    \"unique_reference_id\":\"User12345|1777634238\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_links/","description":"<p>Create new Payment Link in Setup Mode (<code>mode</code> = <code>SETUP</code>).</p>\n<p>Refer to <code>POST /payment_links</code> for details on creating payment links.</p>\n","urlObject":{"path":["payment_links",""],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"172e468e-674f-4ca8-b0c4-0e19ba136b1e","name":"Success (setup mode)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"body":{"mode":"raw","raw":"{\n    \"currency\": \"HKD\",\n    //\"integration_metadata\": {\n    //     \"integration_id\": \"RAPIDSTOR\",\n    //     \"rapidstor_metadata\": {\n    //        \"account_token\": \"{{rapidstor_account_token}}\",\n    //         \"corp_code\": \"{{corp_code}}\",\n    //         \"s_location_code\": \"{{s_location_code}}\",\n    //         \"tenant_id\": \"{{tenant_id}}\"\n    //     }\n    // },\n    \"link_customizations\": {\n        \"countries\": [],\n        \"institution_status\": \"\",\n        \"language\": \"en\",\n        \"link_mode\": \"\",\n        \"redirect_uri\": \"\",\n        \"ui_mode\": \"\"\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    },\n    \"mode\": \"SETUP\",\n    \"payment_metadata\": {\n        \"user_address\": \"1 Admiralty Drive\", // Required for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n\t    \"user_city\": \"Hong Kong\", // Required for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n\t    \"user_country\": \"HK\", // Required for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n\t    \"user_first_name\": \"John\", // Optional for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n\t    \"user_last_name\": \"Doe\" // Optional for Cybersource/Global Payments card integrations (custom integration, contact support@finverse.com to setup)\n    },\n    \"payment_setup_options\": {\n        \"future_payments\": \"CLICK_TO_PAY\"\n//        \"mandate_details\": {\n//            \"description\": \"Test Mandate\",\n//            \"end_date\": \"2024-03-01\",\n//            \"start_date\": \"{{today}}\",\n//            \"transaction_limits\": {\n//                \"max_period_amount\": 10000,\n//                \"max_period_count\": 10,\n//                \"max_transaction_amount\": {{max_trx_amount_in_minor}},\n//                \"period\": \"MONTHLY\"\n//            }\n//        },\n//        \"payment_method_types\": [\"CARD\", \"MANDATE\"]\n//        \"recipient_account_filters\": {\n//            \"business_unit\": \"BRANCH 1\"\n//        }\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1777634238\",\n        \"name\": \"John Doe\"\n    },\n    \"unique_reference_id\":\"User12345|1777634238\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_links/"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1731038922"},{"key":"Date","value":"Fri, 08 Nov 2024 04:08:42 GMT"},{"key":"Content-Length","value":"931"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"created_at\": \"2024-11-08T04:08:42.719Z\",\n    \"currency\": \"HKD\",\n    \"link_customizations\": {\n        \"language\": \"en\"\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    },\n    \"mode\": \"SETUP\",\n    \"payment_details\": {\n        \"description\": \"\",\n        \"external_transaction_reference\": \"\"\n    },\n    \"payment_link_id\": \"01JC4ZBHYZMJ470WSVFSM7JRRA\",\n    \"payment_metadata\": {\n        \"user_address\": \"1 Admiralty Drive\",\n        \"user_city\": \"Hong Kong\",\n        \"user_country\": \"HK\",\n        \"user_first_name\": \"John\",\n        \"user_last_name\": \"Doe\"\n    },\n    \"payment_setup_options\": {\n        \"future_payments\": \"AUTOPAY\",\n        \"payment_method_types\": [\n            \"CARD\",\n            \"MANDATE\",\n            \"MANUAL\"\n        ]\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1731038922\",\n        \"name\": \"John Doe\",\n        \"user_id\": \"01JC4ZBHZC3476P3482CCC7D85\"\n    },\n    \"session_status\": \"OPEN\",\n    \"status\": \"CREATED\",\n    \"unique_reference_id\": \"User12345|1731038922\",\n    \"updated_at\": \"2024-11-08T04:08:42.719Z\",\n    \"url\": \"https://pay.prod.finverse.net/link/01JC4ZBHYZMJ470WSVFSM7JRRA\"\n}"},{"id":"0bcd35f0-19a9-4542-862a-46d926c46c96","name":"Error (reused unique_reference_id with different request body)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"currency\": \"HKD\",\n    \"link_customizations\": {\n        \"countries\": [],\n        \"institution_status\": \"\",\n        \"language\": \"en\",\n        \"link_mode\": \"\",\n        \"redirect_uri\": \"\",\n        \"ui_mode\": \"\"\n    },\n    \"mode\": \"SETUP\",\n    \"payment_setup_options\": {\n        \"future_payments\": \"AUTOPAY\"\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1777634238\",\n        \"name\": \"John Doe\"\n    },\n    \"unique_reference_id\":\"Setup12345|1777634238\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_links/"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1689652320"},{"key":"Date","value":"Tue, 18 Jul 2023 03:51:59 GMT"},{"key":"Content-Length","value":"218"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"Trying to update existing paymentLink. Not supported.\",\n        \"error_code\": \"INVALID_PARAMETER\",\n        \"message\": \"The parameters provided are invalid. See details.\",\n        \"request_id\": \"1689652320\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"05b04ea0-d9de-47c0-86d9-f2800c0b3050"},{"name":"/payment_links/{id} (Get Payment Link)","event":[{"listen":"test","script":{"id":"7670c6c5-b256-4a0c-8268-9bfdd2134668","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//SET ENVIRONMENT VARIABLES","if(jsonData.mandate) {","    pm.environment.set(\"mandate_id\", jsonData.mandate.mandate_id)","};","if(jsonData.payment) {","    pm.environment.set(\"payment_id\", jsonData.payment.payment_id)","};","if(jsonData.payment_method) {","    pm.environment.set(\"payment_method_id\", jsonData.payment_method.payment_method_id)","};","if(jsonData.sender) {","    pm.environment.set(\"sender_id\", jsonData.sender.user_id)","};","if(jsonData.sender) {","    pm.environment.set(\"user_id\", jsonData.sender.user_id)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payment Link ID or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"payment_link_id\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"amount\": {\"type\":\"integer\"},","            \"created_at\": {\"type\":\"string\"},","            \"currency\": {\"type\":\"string\"},","            \"integration_metadata\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"integration_id\": {\"type\":\"string\"},","                    \"rapidstor_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_token\": {\"type\":\"string\"},","                            \"corp_code\": {\"type\":\"string\"},","                            \"i_anniv_days\": {\"type\":\"integer\"}, ","                            \"s_location_code\": {\"type\":\"string\"},","                            \"tenant_default_currency\": {\"type\":\"string\"},","                            \"tenant_id\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"account_token\",","                            \"corp_code\",","                            \"s_location_code\",","                            \"tenant_id\"","                        ]","                    }","                },","                \"required\": [","                    \"integration_id\"","                ]","            },","            \"link_customizations\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"countries\": {\"type\":\"array\"},","                    \"institution_status\": {\"type\":\"string\"},","                    \"language\": {","                        \"type\":\"string\",","                        \"enum\": [\"en\", \"ko\", \"vi\", \"zh\"]","                    },","                    \"link_mode\": {\"type\":\"string\"},","                    \"redirect_uri\": {\"type\":\"string\"},","                    \"ui_mode\": {","                        \"type\":\"string\",","                        \"enum\": [\"redirect\", \"standalone\", \"iframe\"]","                    }","                },","                \"required\": []","            },","            \"metadata\": {\"type\":\"object\"},","            \"mode\": {  ","                \"type\":\"string\",","                \"enum\": [\"PAYMENT\", \"SETUP\"]","            },","            \"payment\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"amount\": {\"type\":\"integer\"},","                    \"amount_total_with_surcharge\": {\"type\":\"integer\"},","                    \"created_at\": {\"type\":\"string\"},","                    \"currency\": {\"type\":\"string\"},","                    \"error\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"details\": {\"type\":\"string\"},","                            \"error_code\": {\"type\":\"string\"},","                            \"message\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                            }","                        },","                        \"required\": [","                            \"error_code\",","                            \"message\",","                            \"type\"","                        ] ","                    },","                    \"fees\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"amount\": {\"type\":\"integer\"},","                                \"currency\": {\"type\":\"string\"},","                                \"paid_by\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                },","                                \"paid_by_account_id\": {\"type\":\"string\"}","                            },","                            \"required\": [","                                \"amount\", ","                                \"currency\", ","                                \"paid_by\", ","                                \"paid_by_account_id\"","                            ]","                        }","                    },","                    \"metadata\": {\"type\":\"object\"},","                    \"payment_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"collection_entity_name\": {\"type\":\"string\"},","                            \"description\": {\"type\":\"string\"},","                            \"external_transaction_reference\": {\"type\": \"string\"},","                            \"mandate_id\": {\"type\":\"string\"},","                            \"processor_entity_name\": {\"type\":\"string\"},","                            \"processor_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"auth_code\": {\"type\":\"string\"},","                                    \"processor_id\": {\"type\":\"string\"},","                                    \"processor_reference\": {\"type\":\"string\"},","                                    \"result\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"decline_code\": {\"type\":\"string\"},","                                            \"decline_reason\": {\"type\":\"string\"},","                                            \"last_action\": {\"type\":\"string\"},","                                            \"result_code\": {\"type\":\"string\"},","                                            \"status\": {\"type\":\"string\"}","                                        },","                                        \"required\": [","                                           \"processor_id\"","                                        ]","                                    },","                                },","                                \"required\": []","                            },","                            \"recurring_payment_mode\": {","                                \"type\":\"string\",","                                \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                            },                       ","                            \"references\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"bank_transaction_reference\": {\"type\":\"string\"},","                                    \"dda_reference\": {\"type\":\"string\"},","                                    \"finverse_transaction_reference\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                            \"transaction_reference_id\": {\"type\": \"string\"} // TO BE DEPRECATED","                            },","                        \"required\": [","                            \"description\",","                            \"external_transaction_reference\"","                        ]","                    },","                    \"payment_id\": {\"type\":\"string\"},","                    \"payment_method\": { // SIMPLIFIED PAYMENT METHOD OBJECT -- TO BE EXPANDED LATER INTO FULL PAYMENT_METHOD OBJECT","                        \"type\": \"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"card\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"card_details\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"brand\": {\"type\":\"string\"},","                                            \"collection_entity_name\": {\"type\":\"string\"},","                                            \"country\": {\"type\":\"string\"},","                                            \"expiry_month\": {\"type\":\"integer\"},","                                            \"expiry_year\": {\"type\":\"integer\"}, ","                                            \"fingerprint\": {\"type\":\"string\"},","                                            \"finverse_authorization_reference\": {\"type\":\"string\"},","                                            \"funding\": {","                                                \"type\":\"string\",","                                                \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                                            },","                                            \"is_commercial\": {\"type\":\"boolean\"},","                                            \"last4\": {\"type\":\"string\"},","                                            \"processor_entity_name\": {\"type\":\"string\"},","                                            \"processor_details\": {","                                                \"type\":\"object\",","                                                \"additionalProperties\": false,","                                                \"properties\": {","                                                    \"auth_code\": {\"type\":\"string\"},","                                                    \"processor_id\": {\"type\":\"string\"},","                                                    \"processor_reference\": {\"type\":\"string\"},","                                                    \"token_id\": {\"type\":\"string\"},","                                                },","                                                \"required\": []","                                            },","                                            \"recurring_payment_mode\": {","                                                \"type\":\"string\",","                                                \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                                            }","                                        },","                                        \"required\": []","                                    }","                                },","                                \"required\": []","                            }","                        },","                        \"required\": [ ]","                    },","                    \"payment_method_id\":  {\"type\":\"string\"}, // TBD: MAY BE DEPRECATED LATER ONCE INCLUDED IN FULL PAYMENT_METHOD OBJECT","                    \"recipient\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"name\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"name\"","                        ]","                    },","                    \"recipient_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            }","                        },","                        \"required\": [","                            \"account_id\",","                            \"account_type\"","                        ]","                    },","                    \"sender\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"external_user_id\": {\"type\":\"string\"},","                            \"name\": {\"type\":\"string\"},","                            \"user_details\": {","                                \"type\":[\"array\",\"null\"],","                                \"items\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"details_type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                        },","                                        \"values\": {","                                            \"type\": \"array\",","                                            \"items\": {","                                                \"type\": \"string\"","                                            }","                                        }","                                    },","                                    \"required\": [","                                        \"details_type\",","                                        \"values\"","                                    ]","                                }","                            },","                            \"user_id\": {\"type\":\"string\"},","                            \"user_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                            }","                        },","                        \"required\": [","                            \"external_user_id\",","                            //\"name\", // TO BE ENFORCED","                            \"user_id\",","                            \"user_type\"","                        ]","                    },","                    \"sender_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_number\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"number\": {\"type\":\"string\"},","                                    \"type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"IBAN\", \"LOCAL\"]","                                    }","                                },","                                \"required\": [","                                    \"number\",","                                    \"type\"","                                ]","                            },","                            \"account_number_masked\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            },","                            \"accountholder_name\": {\"type\":\"string\"},","                            \"bank_code\": {\"type\":\"string\"},","                            \"institution_id\": {\"type\":\"string\"},","                            \"institution_name\": {\"type\":\"string\"},","                            \"user_id\": {\"type\":\"string\"},","                        },","                        \"required\": [","                            \"account_type\",","                            \"user_id\"","                        ]","                    },","                    \"status\": {","                        \"type\":\"string\",","                        \"enum\": [\"CREATED\", \"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"SUBMITTED\", \"EXECUTED\", \"CANCELLED\", \"FAILED\"]","                    },","                    \"surcharge_amount\": {\"type\":\"integer\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"CARD\", \"MANDATE\", \"MANUAL\", \"SINGLE\"]","                    },","                    \"updated_at\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"amount\",","                    \"amount_total_with_surcharge\",","                    \"created_at\",","                    \"currency\",","                    \"fees\",","                    \"payment_details\",","                    \"payment_id\",","                    //\"payment_method\", // TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT METHOD","                    //\"payment_method_id\", // TBC: TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT_METHOD_ID","                    \"recipient\",","                    \"recipient_account\",","                    \"sender\",","                    \"status\",","                    \"surcharge_amount\",","                    \"type\",","                    \"updated_at\"","                ]","            },","            \"payment_details\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"description\": {\"type\":\"string\"},","                    \"external_transaction_reference\": {\"type\":\"string\"}","                    },","                \"required\": []","            },","            \"payment_link_id\": {\"type\":\"string\"},","            \"payment_metadata\": {\"type\":\"object\"},","            \"payment_method\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"card\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"card_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"acquirer_authorization_reference\": {\"type\":\"string\"},","                                    \"brand\": {\"type\":\"string\"},","                                    \"brand_product_name\": {\"type\":\"string\"},","                                    \"card_number_alias\": {\"type\":\"string\"},","                                    \"collection_entity_name\": {\"type\":\"string\"},","                                    \"country\": {\"type\":\"string\"},","                                    \"expiry_month\": {\"type\":\"integer\"},","                                    \"expiry_year\": {\"type\":\"integer\"}, ","                                    \"fingerprint\": {\"type\":\"string\"},","                                    \"finverse_authorization_reference\": {\"type\":\"string\"},","                                    \"funding\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                                    },","                                    \"is_commercial\": {\"type\":\"boolean\"},","                                    \"last4\": {\"type\":\"string\"},","                                    \"processor_entity_name\": {\"type\":\"string\"},","                                    \"processor_details\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"auth_code\": {\"type\":\"string\"},","                                            \"processor_id\": {\"type\":\"string\"},","                                            \"processor_reference\": {\"type\":\"string\"},","                                            \"token_id\": {\"type\":\"string\"},","                                        },","                                        \"required\": []","                                    },","                                    \"recurring_payment_mode\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                                    }","                                },","                                \"required\": []","                            },","                            \"created_at\": {\"type\":\"string\"},","                            \"recipient_account\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"account_id\": {\"type\":\"string\"},","                                    \"account_type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                    }","                                },","                                \"required\": [\"account_id\", \"account_type\"]","                            },","                            \"risk_data\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"processor_risk_data\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"browser_type\": {\"type\":\"string\"},","                                            \"device_type\": {\"type\":\"string\"},","                                            \"shopper_country\": {\"type\":\"string\"},","                                            \"shopper_ip\": {\"type\":\"string\"},","                                            \"shopper_locale\": {\"type\":\"string\"}","                                        },","                                        \"required\": []","                                    },","                                },","                                \"required\": []","                            },","                            \"status\": {","                                \"type\":\"string\",","                                \"enum\": [\"PROCESSING\", \"SUCCEEDED\", \"CANCELLED\"]","                            },","                            \"updated_at\": {\"type\":\"string\"},","                        },","                        \"required\" : [","                            \"created_at\",","                            \"status\",","                            \"updated_at\"","                        ]","                    },","                    \"integration_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"adyen_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"auth_code\": {\"type\":\"string\"},","                                    \"payment_method_id\": {\"type\":\"string\"},","                                    \"psp_reference\": {\"type\":\"string\"}, ","                                    \"recurring_processing_model\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"payment_method_id\",","                                    \"recurring_processing_model\"","                                ]","                            },","                            \"cybersource_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"payment_token\": {\"type\":\"string\"}  ","                                },","                                \"required\": [","                                    \"payment_token\"","                                ]","                            },","                            \"gocardless_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"funds_settlement\": {\"type\":\"string\"},","                                    \"last_action\":  {\"type\":\"string\"},","                                    \"mandate_id\": {\"type\":\"string\"},","                                    \"next_possible_charge_date\": {\"type\":\"string\"}, ","                                    \"payments_require_approval\": {\"type\":\"boolean\"},","                                    \"reference\": {\"type\":\"string\"},","                                    \"scheme\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"mandate_id\"","                                ]","                            },","                            \"integration_id\": {\"type\":\"string\"},","                            \"stripe_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"customer\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"id\": {\"type\":\"string\"}","                                        },","                                        \"required\": [\"id\"] ","                                    },","                                    \"payment_method\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"id\": {\"type\":\"string\"}","                                        },","                                        \"required\": [\"id\"] ","                                    },","                                },","                                \"required\": [","                                    \"customer\",","                                    \"payment_method\"","                                ]","                            }","                        },","                        \"required\": [","                            \"integration_id\"","                        ]","                    },","                    \"mandate\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"created_at\": {\"type\":\"string\"},  ","                            \"error\": {","                                \"type\": \"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"details\": {\"type\":\"string\"},","                                    \"error_code\": {\"type\":\"string\"},","                                    \"message\": {\"type\":\"string\"},","                                    \"request_id\": {\"type\":\"string\"},","                                    \"type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                                    }","                                },","                                \"required\" : [","                                    \"error_code\",","                                    \"message\",","                                    \"request_id\",","                                    \"type\"","                                ]","                            },","                            \"fees\": {","                                \"type\":\"array\",","                                \"items\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"amount\": {\"type\":\"integer\"},","                                        \"currency\": {\"type\":\"string\"},","                                        \"paid_by\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                        },","                                        \"paid_by_account_id\": {\"type\":\"string\"}","                                    },","                                    \"required\": [","                                        \"amount\", ","                                        \"currency\", ","                                        \"paid_by\", ","                                        \"paid_by_account_id\"","                                    ]","                                }","                            },","                            \"mandate_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"collection_entity_name\": {\"type\":\"string\"},","                                    \"currency\": {\"type\":\"string\"},","\t\t\t                        \"dda_reference\": {\"type\":\"string\"},","                                    \"description\": {\"type\":\"string\"},","                                    \"end_date\": {\"type\":\"string\"},","                                    \"mandate_bank_reference\": {\"type\":\"string\"},","                                    \"payment_schedule\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"amount\": {\"type\":\"integer\"},","                                            \"frequency\": {\"type\":\"string\"}","                                        },","                                        \"required\": [","                                            \"amount\",","                                            \"frequency\"","                                        ]","                                    },","                                    \"processor_entity_name\": {\"type\":\"string\"},","                                    \"start_date\": {\"type\":\"string\"},","                                    \"transaction_limits\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"max_period_amount\": {\"type\":\"integer\"},","                                            \"max_period_count\": {\"type\":\"integer\"},","                                            \"max_transaction_amount\": {\"type\":\"integer\"},","                                            \"max_transaction_amount_set_by_payer_initial\": {\"type\":\"integer\"},","                                            \"period\": {\"type\":\"string\"}","                                        },","                                        \"required\": []","                                    }","                                },","                                \"required\": [","                                    \"currency\",","                                    \"description\"","                                ]","                            },","                            \"mandate_id\": {\"type\":\"string\"},","                            \"metadata\": {\"type\":\"object\"},","                            \"payment_method_id\": {\"type\":\"string\"},","                            \"recipient\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"name\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"name\"","                                ]","                            },","                            \"recipient_account\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"account_id\": {\"type\":\"string\"},","                                    \"account_type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                    },","                                    \"name\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"account_id\",","                                    \"account_type\"","                                ]","                            },","                            \"sender\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"external_user_id\": {\"type\":\"string\"},","                                    \"name\": {\"type\":\"string\"},","                                    \"user_details\": {","                                        \"type\":[\"array\",\"null\"],","                                        \"items\": {","                                            \"type\":\"object\",","                                            \"additionalProperties\": false,","                                            \"properties\": {","                                                \"details_type\": {","                                                    \"type\":\"string\",","                                                    \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                                },","                                                \"values\": {","                                                    \"type\": \"array\",","                                                    \"items\": {","                                                        \"type\": \"string\"","                                                    }","                                                }","                                            },","                                            \"required\": [","                                                \"details_type\",","                                                \"values\"","                                            ]","                                        }","                                    },","                                    \"user_id\": {\"type\":\"string\"},","                                    \"user_type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                                    }","                                },","                                \"required\": [","                                    \"external_user_id\",","                                    //\"name\", // TO BE ENFORCED","                                    \"user_id\",","                                    \"user_type\"","                                ]","                            },","                            \"sender_account\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"account_id\": {\"type\":\"string\"},","                                    \"account_number\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"number\": {\"type\":\"string\"},","                                            \"type\": {","                                                \"type\":\"string\",","                                                \"enum\": [\"IBAN\", \"LOCAL\"]","                                            }","                                        },","                                        \"required\": [","                                            \"number\",","                                            \"type\"","                                        ]","                                    },","                                    \"account_number_masked\": {\"type\":\"string\"},","                                    \"account_type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                    },","                                    \"accountholder_name\": {\"type\":\"string\"},","                                    \"bank_code\": {\"type\":\"string\"},","                                    \"institution_id\": {\"type\":\"string\"},","                                    \"institution_name\": {\"type\":\"string\"},","                                    \"user_id\": {\"type\":\"string\"},","                                },","                                \"required\": [","                                    \"account_type\",","                                    \"user_id\"","                                ]","                            },","                            \"status\": {","                                \"type\":\"string\",","                                \"enum\": [\"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"FAILED\"]","                            },","                            \"updated_at\": {\"type\":\"string\"}","                        },","                        \"required\" : [","                            \"created_at\",","                            \"fees\",","                            \"mandate_details\",","                            \"mandate_id\",","                            \"payment_method_id\",","                            \"recipient\",","                            \"sender\",","                            \"status\",","                            \"updated_at\"","                        ]","                    },","                    \"payment_method_id\": {\"type\": \"string\"},","                    \"payment_method_type\": {","                        \"type\": \"string\",","                        \"enum\": [\"CARD\", \"MANDATE\"]","                    }","                },","                \"if\": {","                    \"properties\": {","                        \"payment_method_type\": {\"const\": \"CARD\"}","                    }","                },","                \"then\": {","                    \"required\" : [","                        \"card\",","                        \"payment_method_id\",","                        \"payment_method_type\"","                    ]","                },","                \"if\": {","                    \"properties\": {","                        \"payment_method_type\": {\"const\": \"MANDATE\"}","                    }","                },","                \"then\": {","                    \"required\" : [","                        \"mandate\",","                        \"payment_method_id\",","                        \"payment_method_type\"","                    ]","                }","            },","            \"payment_setup_options\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"autopay_enrollment_configuration\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"display_enrollment_screen\": {\"type\":\"boolean\"},","                            \"enrollment_prefill_value\": {","                                \"type\":\"string\",","                                \"enum\": [\"YES\", \"NO\", \"\"]","                            }","                        },","                        \"required\": [","                            \"display_enrollment_screen\"","                        ]","                    },","                    \"future_payments\": {","                        \"type\":\"string\",","                        \"enum\": [\"AUTOPAY\", \"CLICK_TO_PAY\"]","                    },","                    \"mandate_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"description\": {\"type\":\"string\"},","                            \"end_date\": {\"type\":\"string\"},","                            \"payment_schedule\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"amount\": {\"type\":\"integer\"},","                                    \"frequency\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"amount\",","                                    \"frequency\"","                                ]","                            },","                            \"start_date\": {\"type\":\"string\"},","                            \"transaction_limits\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"max_period_amount\": {\"type\":\"integer\"},","                                    \"max_period_count\": {\"type\":\"integer\"},","                                    \"max_transaction_amount\": {\"type\":\"integer\"},","                                    \"period\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"max_transaction_amount\"","                                ]","                            }","                        },","                        \"required\": []","                    },","                    \"payment_method_types\": {","                        \"type\":\"array\",","                        \"additionalProperties\": false,","                        \"items\": {","                            \"additionalProperties\": false,","                            \"type\":\"string\",","                            \"enum\": [\"CARD\", \"MANDATE\", \"MANUAL\"]","                        }","                    },","                    \"recipient_account_filters\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"business_unit\": {\"type\":\"string\"}","                        },","                        \"required\": []","                    },","                    \"recurring_payment_mode\": {","                        \"type\":\"string\",","                        \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                    }","                },","                \"required\": [","                    \"autopay_enrollment_configuration\",","                    \"recurring_payment_mode\"","                ]","            },","            \"sender\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"email\": {\"type\":\"string\"},","                    \"external_user_id\": {\"type\":\"string\"},","                    \"name\": {\"type\":\"string\"},","                    \"user_details\": {","                        \"type\":[\"array\",\"null\"],","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                },","                                \"values\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"type\": \"string\"","                                    }","                                }","                            },","                            \"required\": [","                                \"details_type\",","                                \"values\"","                            ]","                        }","                    },","                    \"user_id\": {\"type\":\"string\"},","                    \"user_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                    }","                },","                \"required\": [","                    \"external_user_id\",","                    //\"name\", // TO BE ENFORCED","                    \"user_id\",","                ]","            },","            \"session_status\": {","                \"type\":\"string\",","                \"enum\": [\"OPEN\", \"PROCESSING\", \"COMPLETE\", \"FAILED\"]","            },","            \"status\": {","                \"type\":\"string\",","                \"enum\": [\"CREATED\", \"CANCELLED\", \"PAID\", \"SETUP_SUCCEEDED\"]","            },","            \"unique_reference_id\": {\"type\":\"string\"},","            \"updated_at\": {\"type\":\"string\"},","            \"url\": {\"type\":\"string\"}","        },","        \"if\": {","            \"properties\": {","                \"mode\": {\"const\": \"PAYMENT\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"amount\",","                \"created_at\",","                \"currency\",","                \"mode\",","                \"payment_link_id\",","                \"sender\",","                \"session_status\",","                \"status\",","                \"updated_at\",","                \"unique_reference_id\",","                \"url\"","            ]","        },","        \"if\": {","            \"properties\": {","                \"mode\": {\"const\": \"SETUP\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"created_at\",","                \"currency\",","                \"mode\",","                \"payment_link_id\",","                \"payment_setup_options\",","                \"sender\",","                \"session_status\",","                \"status\",","                \"updated_at\",","                \"unique_reference_id\",","                \"url\"","            ]","        }","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"b2723bd2-715a-4a34-ad22-57b46cc70906","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"url":"https://api.prod.finverse.net/payment_links/{{payment_link_id}}","description":"<p>Retrieve a Payment Link object (using a specific <code>payment_link_id</code>).</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"response-fields\">Response fields</h2>\n<p>Single <code>Payment Link</code> object, containing information on the Payment Link.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>amount</td>\n<td>integer (ISO 4217 \"minor\" currency unit), optional</td>\n<td>Amount of the payment (in minor currency unit).  <br />  <br />Only returned if <code>mode</code> = <code>PAYMENT</code>.</td>\n</tr>\n<tr>\n<td>created_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp when the payment link was first created</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code)</td>\n<td>Currency of the payment (e.g. HKD)</td>\n</tr>\n<tr>\n<td>link_customizations</td>\n<td>object, optional</td>\n<td>Optional parameters to customize the behaviour of Finverse Link's UI to fit your implementation requirements. See <code>POST /payment_links</code>.</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format. E.g. <code>contract_id: 1234</code>.</td>\n</tr>\n<tr>\n<td>mode</td>\n<td>string ENUM</td>\n<td>Specified payment link mode.  <br />  <br /><strong>Possible values:</strong>  <br />- <code>PAYMENT</code>: payment link is used to collect the specified payment amount now;  <br />- <code>SETUP</code>: payment link is used to register a payment method to be charged later (using <code>POST /payments</code>).</td>\n</tr>\n<tr>\n<td>payment</td>\n<td>object, optional</td>\n<td>Latest Payment object (if any) associated with the payment link. See below.  <br />  <br />Only returned if <code>mode</code> = <code>PAYMENT</code>.</td>\n</tr>\n<tr>\n<td>payment_details</td>\n<td>object, optional</td>\n<td>Details on the payment. See below.  <br />  <br />Only returned if <code>mode</code> = <code>PAYMENT</code>.</td>\n</tr>\n<tr>\n<td>payment_link_id</td>\n<td>string (ULID)</td>\n<td>Finverse Payment Link ID for this payment link. Always unique. Creating a payment link with different <code>unique_reference_id</code> values will result in two payment links with different IDs.</td>\n</tr>\n<tr>\n<td>payment_metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format, to facilitate payment reconciliation. E.g. <code>contract_id: 1234</code>.  <br />  <br />These will be added as <code>metadata</code> on any Payment object directly created by the Payment Link, and will be included in Finverse's reporting (e.g. statements issued to customer apps).  <br />  <br />Only used if <code>mode</code> = <code>PAYMENT</code>. Will be ignored if <code>mode</code> = <code>SETUP</code>.</td>\n</tr>\n<tr>\n<td>payment_method</td>\n<td>object, optional</td>\n<td>Details on the payment method authorized by the end-user. See below.</td>\n</tr>\n<tr>\n<td>payment_setup_options</td>\n<td>object, optional</td>\n<td>Additional parameters recording how payment methods and future payments have been configured. See below.</td>\n</tr>\n<tr>\n<td>sender</td>\n<td>object</td>\n<td>Details on the sender of the payment. See below.</td>\n</tr>\n<tr>\n<td>session_status</td>\n<td>string ENUM</td>\n<td>Current session status of the payment link. Possible values: <code>OPEN</code>, <code>PROCESSING</code>, <code>COMPLETE</code>, <code>FAILED</code>.  <br />  <br />Session status returns interim status details on a payment link in <code>status</code> = <code>CREATED</code>:  <br />- Session status starts as <code>OPEN</code>, then may progress to <code>PROCESSING</code> (indicating an async payment method or payment is currently processing), <code>COMPLETE</code> (for successful payment links), or <code>FAILED</code> (for failed payment method setup or payments).  <br />- Session status is computed at read-time based on the status of any payment method setup or payment initiated by the payment link, until the payment link is successful.  <br />- Session status may reset if a user retries a payment method setup or payment using the same payment link until it is successful (e.g. session_status may go from <code>FAILED</code> &gt; <code>PROCESSING</code>, <code>FAILED</code> &gt; <code>COMPLETE</code>, etc).  <br />- The final <code>session_status</code> is <code>COMPLETE</code>, which corresponds to payment link <code>status</code> = <code>PAID</code> or <code>SETUP_SUCCEEDED</code>.  <br />  <br />We recommend using the payment link <code>status</code> as the primary indicator of payment link success (e.g. <code>status</code> = <code>PAID</code> or <code>SETUP_CREATED</code>). However, if your user flow or UI needs interim session details while the payment link <code>status</code> is still <code>CREATED</code>, then you should use <code>session_status</code> (for example to display to the user a \"Your payment is processing\" or \"Your payment failed\" message).</td>\n</tr>\n<tr>\n<td>status</td>\n<td>string ENUM</td>\n<td>Status of the payment link. Possible values: <code>CREATED</code>, <code>PAID</code>, <code>SETUP_SUCCEEDED</code>, <code>CANCELLED</code>.  <br />  <br />The status for a successful payment link varies based on the payment link <code>mode</code>:  <br />- <code>mode</code> = <code>PAYMENT</code> =&gt; success <code>status</code> = <code>PAID</code>  <br />- <code>mode</code> = <code>SETUP</code> =&gt; success <code>status</code> = <code>SETUP_SUCCEEDED</code>.</td>\n</tr>\n<tr>\n<td>unique_reference_id</td>\n<td>string</td>\n<td>Customer-supplied string, uniquely identifying the payment to be collected. See “_Handling retries and avoiding duplicate payments_” under <code>POST /payment_links</code>.</td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last update to the payment link's record</td>\n</tr>\n<tr>\n<td>url</td>\n<td>string</td>\n<td>URL to launch the Finverse Link UI flow, for the end-user to select a payment method &amp; authorize the payment.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment-object\">payment (object)</h3>\n<p>Latest Payment object (if any) associated with the payment link.</p>\n<p>Refer to the Payment data model in <code>GET /payments/{payment_id}</code> for details on the Payment object.</p>\n<p>Only returned if <code>mode</code> = <code>PAYMENT</code>, once a Payment has started processing or is executed/failed.</p>\n<h3 id=\"payment_details-object-optional\">payment_details (object, optional)</h3>\n<p>Details describing the requested payment.</p>\n<p>Only returned if <code>mode</code> = <code>PAYMENT</code>.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>description</td>\n<td>string (SWIFT character set)</td>\n<td>User-facing description for the payment transaction.</td>\n</tr>\n<tr>\n<td>external_transaction_reference</td>\n<td>string (SWIFT character set, max length: 10 characters)</td>\n<td>User-facing transaction reference for the payment transaction (e.g. bill/invoice number). Some payment methods may display this on the user's statement.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment_method-object-optional\">payment_method (object, optional)</h3>\n<p>Details on the payment method authorized by the end-user. Refer to the Payment Method data model in <code>GET /payment_users/{user_id}/payment_methods</code> for details on the Payment Method object.</p>\n<p>Currently, only returned for payment methods that are stored. The following payment methods are not stored:</p>\n<p>(i) one-time payment methods (e.g. FPS);</p>\n<p>(ii) recurring payment methods authorized for only one-time use (e.g. cards/mandates where Future Payments are not enabled).</p>\n<p>For one-time card payments (i.e. where cards are not stored), some card details are included in the Payments object, when available from the card processing gateway (see <code>payment_links.payments.payment_methods</code> or <code>payments.payment_methods</code>).</p>\n<h3 id=\"payment_setup_options-object\">payment_setup_options (object)</h3>\n<p>Additional parameters recording how payment methods and future payments have been configured.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>utopay_enrollment_configurations</td>\n<td>object</td>\n<td>See <code>POST /payment_links</code> for details.</td>\n</tr>\n<tr>\n<td>future_payments</td>\n<td>string ENUM, optional</td>\n<td>See <code>POST /payment_links</code> for details.</td>\n</tr>\n<tr>\n<td>mandate_details</td>\n<td>object, optional</td>\n<td>See <code>POST /payment_links</code> for details.</td>\n</tr>\n<tr>\n<td>payment_method_types</td>\n<td>array of ENUMs, optional</td>\n<td>See <code>POST /payment_links</code> for details.</td>\n</tr>\n<tr>\n<td>recipient_account_filters</td>\n<td>object, optional</td>\n<td>See <code>POST /payment_links</code> for details.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"sender-object\">sender (object)</h3>\n<p>The sender object includes a Payment User object for the sender of the payment. Refer to the Payment User data model in <code>GET /payment_users/{payment_user_id}</code> for details on the Payment User object.</p>\n<p>Note: Some Payment User metadata fields are omitted for clarity (e.g. <code>created_at</code>, <code>metadata</code>, <code>updated_at</code>).</p>\n","urlObject":{"path":["payment_links","{{payment_link_id}}"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"bf91ff88-e639-4c93-8b11-cce0cde35ec2","name":"Success (Link created)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/payment_links/{{payment_link_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1713754106"},{"key":"Date","value":"Mon, 22 Apr 2024 02:48:26 GMT"},{"key":"Content-Length","value":"769"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 10000,\n    \"created_at\": \"2024-04-22T02:48:22.688Z\",\n    \"currency\": \"HKD\",\n    \"link_customizations\": {\n        \"language\": \"en\"\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    },\n    \"mode\": \"PAYMENT\",\n    \"payment_details\": {\n        \"description\": \"TEST Payment\",\n        \"external_transaction_reference\": \"INV12345\"\n    },\n    \"payment_link_id\": \"01HW1V8PX04GHM6Q8ZAR7DPRAT\",\n    \"payment_metadata\": {\n        \"contract_id\": \"1234\",\n        \"key\": \"value\"\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1713754102\",\n        \"name\": \"John Doe\",\n        \"user_id\": \"01HW1V8PXBYHY2T0N121R50Q5V\"\n    },\n    \"session_status\": \"OPEN\",\n    \"status\": \"CREATED\",\n    \"unique_reference_id\": \"Inv12345|1713754102\",\n    \"updated_at\": \"2024-04-22T02:48:22.688Z\",\n    \"url\": \"https://pay.prod.finverse.net/link/01HW1V8PX04GHM6Q8ZAR7DPRAT\"\n}"},{"id":"e3977ce1-8ec3-48d9-844d-174cb04bf7eb","name":"Success (Manual bank payment processing)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/payment_links/{{payment_link_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1713754059"},{"key":"Date","value":"Mon, 22 Apr 2024 02:47:39 GMT"},{"key":"Content-Length","value":"1514"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 10000,\n    \"created_at\": \"2024-04-22T02:45:23.978Z\",\n    \"currency\": \"HKD\",\n    \"link_customizations\": {\n        \"language\": \"en\"\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    },\n    \"mode\": \"PAYMENT\",\n    \"payment\": {\n        \"amount\": 10000,\n        \"created_at\": \"2024-04-22T02:47:31.021Z\",\n        \"currency\": \"HKD\",\n        \"fees\": [\n            {\n                \"amount\": 50,\n                \"currency\": \"HKD\",\n                \"paid_by\": \"RECIPIENT\",\n                \"paid_by_account_id\": \"01H5VEQ9DZP46TB3ZM3WPNT74H\"\n            }\n        ],\n        \"metadata\": {\n            \"contract_id\": \"1234\",\n            \"key\": \"value\"\n        },\n        \"payment_details\": {\n            \"collection_entity_name\": \"Finverse Technologies Limited\",\n            \"description\": \"TEST Payment\",\n            \"external_transaction_reference\": \"INV12345\",\n            \"processor_entity_name\": \"Finverse Technologies Limited\",\n            \"references\": {\n                \"finverse_transaction_reference\": \"FV250101AABB\"\n            }\n        },\n        \"payment_id\": \"01HW1V71E96YHR4Q2BQ2KQ06R8\",\n        \"recipient\": {\n            \"name\": \"Demo App\"\n        },\n        \"recipient_account\": {\n            \"account_id\": \"01H5VEQ9DZP46TB3ZM3WPNT74H\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\"\n        },\n        \"sender\": {\n            \"external_user_id\": \"user_id_1||1713753924\",\n            \"name\": \"John Doe\",\n            \"user_details\": [],\n            \"user_id\": \"01HW1V38CN84NDAT6KE37DJ9G8\",\n            \"user_type\": \"UNKNOWN\"\n        },\n        \"status\": \"SUBMITTED\",\n        \"type\": \"MANUAL\",\n        \"updated_at\": \"2024-04-22T02:47:31.021Z\"\n    },\n    \"payment_details\": {\n        \"description\": \"TEST Payment\",\n        \"external_transaction_reference\": \"INV12345\"\n    },\n    \"payment_link_id\": \"01HW1V38CA0M4B5X68SYPCNN9Q\",\n    \"payment_metadata\": {\n        \"contract_id\": \"1234\",\n        \"key\": \"value\"\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1713753924\",\n        \"name\": \"John Doe\",\n        \"user_id\": \"01HW1V38CN84NDAT6KE37DJ9G8\"\n    },\n    \"session_status\": \"PROCESSING\",\n    \"status\": \"CREATED\",\n    \"unique_reference_id\": \"Inv12345|1713753924\",\n    \"updated_at\": \"2024-04-22T02:45:23.978Z\",\n    \"url\": \"https://pay.prod.finverse.net/link/01HW1V38CA0M4B5X68SYPCNN9Q\"\n}"},{"id":"dcb2954f-38cb-4cc4-bb42-dca26575b523","name":"Success (Link paid with mandate)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payment_links/{{payment_link_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1740107150"},{"key":"Date","value":"Fri, 21 Feb 2025 03:05:50 GMT"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"},{"key":"Transfer-Encoding","value":"chunked"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 10000,\n    \"created_at\": \"2025-06-21T05:34:36.563Z\",\n    \"currency\": \"HKD\",\n    \"link_customizations\": {\n        \"language\": \"en\"\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    },\n    \"mode\": \"PAYMENT\",\n    \"payment\": {\n        \"amount\": 10000,\n        \"amount_total_with_surcharge\": 10000,\n        \"created_at\": \"2025-06-21T05:35:28.612Z\",\n        \"currency\": \"HKD\",\n        \"fees\": [\n            {\n                \"amount\": 500,\n                \"currency\": \"HKD\",\n                \"paid_by\": \"RECIPIENT\",\n                \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n            }\n        ],\n        \"metadata\": {\n            \"contract_id\": \"1234\",\n            \"key\": \"value\",\n            \"storeganise_invoice_ids\": \"ABCD\",\n            \"user_address\": \"1 Admiralty Drive\",\n            \"user_city\": \"Hong Kong\",\n            \"user_country\": \"HK\",\n            \"user_first_name\": \"John\",\n            \"user_last_name\": \"Doe\"\n        },\n        \"payment_details\": {\n            \"collection_entity_name\": \"Finverse Technologies Limited\",\n            \"description\": \"TEST Payment\",\n            \"external_transaction_reference\": \"INV12345\",\n            \"processor_entity_name\": \"Finverse Technologies Limited\",\n            \"references\": {\n                \"bank_transaction_reference\": \"DBS_BANK_REF_01JY8FR55T92FBYARB2SDH1EPH\",\n                \"dda_reference\": \"FINVERSE T-8F52-FINV\",\n                \"finverse_transaction_reference\": \"FV250101AABB\"\n            }\n        },\n        \"payment_id\": \"01JY8FR4M8JN3RYWJNNK7AE3HK\",\n        \"payment_method_id\": \"01JY8FQHXCZXWYN2EG383YAGR2\",\n        \"recipient\": {\n            \"name\": \"Finverse Test\"\n        },\n        \"recipient_account\": {\n            \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\"\n        },\n        \"sender\": {\n            \"external_user_id\": \"user_id_1||1750484076\",\n            \"name\": \"John Doe\",\n            \"user_details\": [],\n            \"user_id\": \"01JY8FPJ0XFTEBPH5VHF379XF3\",\n            \"user_type\": \"INDIVIDUAL\"\n        },\n        \"sender_account\": {\n            \"account_id\": \"01JY8FQWS1D4ZX8PJJS9ZY6B58\",\n            \"account_number\": {\n                \"number\": \"01JY8FQWYTG44WF6RECHN6M09F\",\n                \"type\": \"LOCAL\"\n            },\n            \"account_number_masked\": \"300XXXX03\",\n            \"account_type\": \"EXTERNAL_ACCOUNT\",\n            \"accountholder_name\": \"01JY8FQWXZN9CFXFKPPKEHTE2M\",\n            \"bank_code\": \"420\",\n            \"institution_id\": \"testbank-dbs-hk\",\n            \"institution_name\": \"Testbank (HK) Payments - Personal\",\n            \"user_id\": \"01JY8FPJ0XFTEBPH5VHF379XF3\"\n        },\n        \"status\": \"EXECUTED\",\n        \"surcharge_amount\": 0,\n        \"type\": \"MANDATE\",\n        \"updated_at\": \"2025-06-21T05:35:29.664Z\"\n    },\n    \"payment_details\": {\n        \"description\": \"TEST Payment\",\n        \"external_transaction_reference\": \"INV12345\"\n    },\n    \"payment_link_id\": \"01JY8FPJ0K0XWJ4AJBHWJ7W732\",\n    \"payment_metadata\": {\n        \"contract_id\": \"1234\",\n        \"key\": \"value\",\n        \"storeganise_invoice_ids\": \"ABCD\",\n        \"user_address\": \"1 Admiralty Drive\",\n        \"user_city\": \"Hong Kong\",\n        \"user_country\": \"HK\",\n        \"user_first_name\": \"John\",\n        \"user_last_name\": \"Doe\"\n    },\n    \"payment_method\": {\n        \"mandate\": {\n            \"created_at\": \"2025-06-21T05:35:23.088Z\",\n            \"fees\": [\n                {\n                    \"amount\": 0,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"mandate_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"currency\": \"HKD\",\n                \"dda_reference\": \"FINVERSE T-8F52-FINV\",\n                \"description\": \"Payment link mandate\",\n                \"mandate_bank_reference\": \"01JY8FQX8ZAENPWSRG87961DXC\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"start_date\": \"2025-06-21\",\n                \"transaction_limits\": {\n                    \"max_transaction_amount\": 500000,\n                    \"max_transaction_amount_set_by_payer_initial\": 5000\n                }\n            },\n            \"mandate_id\": \"01JY8FQHTEX7FAJMM4SGK4GRSZ\",\n            \"payment_method_id\": \"01JY8FQHXCZXWYN2EG383YAGR2\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750484076\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8FPJ0XFTEBPH5VHF379XF3\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8FQWS1D4ZX8PJJS9ZY6B58\",\n                \"account_number\": {\n                    \"number\": \"01JY8FQWYTG44WF6RECHN6M09F\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"300XXXX03\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8FQWXZN9CFXFKPPKEHTE2M\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8FPJ0XFTEBPH5VHF379XF3\"\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T05:35:23.088Z\"\n        },\n        \"payment_method_id\": \"01JY8FQHXCZXWYN2EG383YAGR2\",\n        \"payment_method_type\": \"MANDATE\"\n    },\n    \"payment_setup_options\": {\n        \"autopay_enrollment_configuration\": {\n            \"display_enrollment_screen\": true,\n            \"enrollment_prefill_value\": \"YES\"\n        },\n        \"future_payments\": \"CLICK_TO_PAY\"\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1750484076\",\n        \"name\": \"John Doe\",\n        \"user_id\": \"01JY8FPJ0XFTEBPH5VHF379XF3\"\n    },\n    \"session_status\": \"COMPLETE\",\n    \"status\": \"PAID\",\n    \"unique_reference_id\": \"Inv12345|1750484076\",\n    \"updated_at\": \"2025-06-21T05:35:29.866Z\",\n    \"url\": \"https://pay.prod.finverse.net/link/01JY8FPJ0K0XWJ4AJBHWJ7W732\"\n}"},{"id":"54677642-ff11-426d-b51d-d1a20b582055","name":"Success (Link paid with manual bank payment)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/payment_links/{{payment_link_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1713754681"},{"key":"Date","value":"Mon, 22 Apr 2024 02:58:01 GMT"},{"key":"Content-Length","value":"1508"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 10000,\n    \"created_at\": \"2024-04-22T02:45:23.978Z\",\n    \"currency\": \"HKD\",\n    \"link_customizations\": {\n        \"language\": \"en\"\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    },\n    \"mode\": \"PAYMENT\",\n    \"payment\": {\n        \"amount\": 10000,\n        \"amount_total_with_surcharge\": 10000,\n        \"created_at\": \"2024-04-22T02:57:25.854Z\",\n        \"currency\": \"HKD\",\n        \"fees\": [\n            {\n                \"amount\": 50,\n                \"currency\": \"HKD\",\n                \"paid_by\": \"RECIPIENT\",\n                \"paid_by_account_id\": \"01H5VEQ9DZP46TB3ZM3WPNT74H\"\n            }\n        ],\n        \"metadata\": {\n            \"contract_id\": \"1234\",\n            \"key\": \"value\"\n        },\n        \"payment_details\": {\n            \"collection_entity_name\": \"Finverse Technologies Limited\",\n            \"description\": \"TEST Payment\",\n            \"external_transaction_reference\": \"INV12345\",\n            \"processor_entity_name\": \"Finverse Technologies Limited\",\n            \"references\": {\n                \"finverse_transaction_reference\": \"FV250101AABB\"\n            }\n        },\n        \"payment_id\": \"01HW1V71E96YHR4Q2BQ2KQ06R8\",\n        \"recipient\": {\n            \"name\": \"Demo App\"\n        },\n        \"recipient_account\": {\n            \"account_id\": \"01H5VEQ9DZP46TB3ZM3WPNT74H\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\"\n        },\n        \"sender\": {\n            \"external_user_id\": \"user_id_1||1713753924\",\n            \"name\": \"John Doe\",\n            \"user_details\": [],\n            \"user_id\": \"01HW1V38CN84NDAT6KE37DJ9G8\",\n            \"user_type\": \"UNKNOWN\"\n        },\n        \"status\": \"EXECUTED\",\n        \"surcharge_amount\": 0,\n        \"type\": \"MANUAL\",\n        \"updated_at\": \"2024-04-22T02:57:25.854Z\"\n    },\n    \"payment_details\": {\n        \"description\": \"TEST Payment\",\n        \"external_transaction_reference\": \"INV12345\"\n    },\n    \"payment_link_id\": \"01HW1V38CA0M4B5X68SYPCNN9Q\",\n    \"payment_metadata\": {\n        \"contract_id\": \"1234\",\n        \"key\": \"value\"\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1713753924\",\n        \"name\": \"John Doe\",\n        \"user_id\": \"01HW1V38CN84NDAT6KE37DJ9G8\"\n    },\n    \"session_status\": \"COMPLETE\",\n    \"status\": \"PAID\",\n    \"unique_reference_id\": \"Inv12345|1713753924\",\n    \"updated_at\": \"2024-04-22T02:57:25.949Z\",\n    \"url\": \"https://pay.prod.finverse.net/link/01HW1V38CA0M4B5X68SYPCNN9Q\"\n}"},{"id":"963d37e5-4855-46bc-9f7f-533377a5f298","name":"Success (Link paid with one-time card)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payment_links/{{payment_link_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1723821155"},{"key":"Date","value":"Fri, 16 Aug 2024 15:12:37 GMT"},{"key":"Content-Length","value":"1872"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 10000,\n    \"created_at\": \"2025-06-21T05:54:33.217Z\",\n    \"currency\": \"HKD\",\n    \"link_customizations\": {\n        \"language\": \"en\"\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    },\n    \"mode\": \"PAYMENT\",\n    \"payment\": {\n        \"amount\": 10000,\n        \"amount_total_with_surcharge\": 10575,\n        \"created_at\": \"2025-06-21T05:54:42.800Z\",\n        \"currency\": \"HKD\",\n        \"fees\": [\n            {\n                \"amount\": 575,\n                \"currency\": \"HKD\",\n                \"paid_by\": \"SENDER\",\n                \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n            },\n            {\n                \"amount\": 595,\n                \"currency\": \"HKD\",\n                \"paid_by\": \"RECIPIENT\",\n                \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n            }\n        ],\n        \"metadata\": {\n            \"contract_id\": \"1234\",\n            \"key\": \"value\",\n            \"storeganise_invoice_ids\": \"ABCD\",\n            \"stripe_charge_id\": \"ch_3RcKOIJXxo5qMAzS1O7zX6Jn\",\n            \"stripe_payment_intent_id\": \"pi_3RcKOIJXxo5qMAzS1hKaqKIj\",\n            \"user_address\": \"1 Admiralty Drive\",\n            \"user_city\": \"Hong Kong\",\n            \"user_country\": \"HK\",\n            \"user_first_name\": \"John\",\n            \"user_last_name\": \"Doe\"\n        },\n        \"payment_details\": {\n            \"collection_entity_name\": \"Finverse Test\",\n            \"description\": \"TEST Payment\",\n            \"external_transaction_reference\": \"INV12345\",\n            \"processor_details\": {\n                \"auth_code\": \"014085\",\n                \"processor_id\": \"adyen\",\n                \"processor_reference\": \"CJRXVH53WM4GBQ65\",\n                \"result\": {\n                    \"result_code\": \"Authorised\"\n                }\n            },\n            \"recurring_payment_mode\": \"NON_RECURRING\",\n            \"references\": {\n                \"finverse_transaction_reference\": \"FV250101AABB\"\n            }\n        },\n        \"payment_id\": \"01JY8GVBWG929X02BEDBGPJGPS\",\n        \"payment_method\": {\n            \"card\": {\n                \"card_details\": {\n                    \"brand\": \"Visa\",\n                    \"collection_entity_name\": \"Demo Company Limited\",\n                    \"expiry_month\": 3,\n                    \"expiry_year\": 2030,\n                    \"finverse_authorization_reference\": \"FC2506181FBA\",\n                    \"last4\": \"4242\",\n                    \"processor_details\": {\n                        \"auth_code\": \"073614\",\n                        \"processor_id\": \"adyen\",\n                        \"processor_reference\": \"NHMBR2TR38H7G775\",\n                        \"token_id\": \"D49T5QZSPLSMC375\"\n                    },\n                    \"recurring_payment_mode\": \"VARIABLE_RECURRING\"\n                }\n            }\n        },\n        \"recipient\": {\n            \"name\": \"Finverse Test\"\n        },\n        \"recipient_account\": {\n            \"account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\"\n        },\n        \"sender\": {\n            \"external_user_id\": \"user_id_1||1750485272\",\n            \"name\": \"John Doe\",\n            \"user_details\": [],\n            \"user_id\": \"01JY8GV2MA6X5QRMY2Q8HABFQJ\",\n            \"user_type\": \"UNKNOWN\"\n        },\n        \"status\": \"EXECUTED\",\n        \"surcharge_amount\": 575,\n        \"type\": \"CARD\",\n        \"updated_at\": \"2025-06-21T05:55:05.215Z\"\n    },\n    \"payment_details\": {\n        \"description\": \"TEST Payment\",\n        \"external_transaction_reference\": \"INV12345\"\n    },\n    \"payment_link_id\": \"01JY8GV2M1A1MWAR1PARD6AS9M\",\n    \"payment_metadata\": {\n        \"contract_id\": \"1234\",\n        \"key\": \"value\",\n        \"storeganise_invoice_ids\": \"ABCD\",\n        \"user_address\": \"1 Admiralty Drive\",\n        \"user_city\": \"Hong Kong\",\n        \"user_country\": \"HK\",\n        \"user_first_name\": \"John\",\n        \"user_last_name\": \"Doe\"\n    },\n    \"payment_setup_options\": {\n        \"autopay_enrollment_configuration\": {\n            \"display_enrollment_screen\": true,\n            \"enrollment_prefill_value\": \"YES\"\n        }\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1750485272\",\n        \"name\": \"John Doe\",\n        \"user_id\": \"01JY8GV2MA6X5QRMY2Q8HABFQJ\"\n    },\n    \"session_status\": \"COMPLETE\",\n    \"status\": \"PAID\",\n    \"unique_reference_id\": \"Inv12345|1750485272\",\n    \"updated_at\": \"2025-06-21T05:55:05.984Z\",\n    \"url\": \"https://pay.prod.finverse.net/link/01JY8GV2M1A1MWAR1PARD6AS9M\"\n}"},{"id":"c5aded53-ab3f-4b74-9cf9-25fea3d380eb","name":"Success (Link paid with stored card)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payment_links/{{payment_link_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1731658254"},{"key":"Date","value":"Fri, 15 Nov 2024 08:10:54 GMT"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"},{"key":"Transfer-Encoding","value":"chunked"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 10000,\n    \"created_at\": \"2025-06-21T05:39:19.078Z\",\n    \"currency\": \"HKD\",\n    \"link_customizations\": {\n        \"language\": \"en\"\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    },\n    \"mode\": \"PAYMENT\",\n    \"payment\": {\n        \"amount\": 10000,\n        \"amount_total_with_surcharge\": 10575,\n        \"created_at\": \"2025-06-21T05:39:28.452Z\",\n        \"currency\": \"HKD\",\n        \"fees\": [\n            {\n                \"amount\": 575,\n                \"currency\": \"HKD\",\n                \"paid_by\": \"SENDER\",\n                \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n            },\n            {\n                \"amount\": 595,\n                \"currency\": \"HKD\",\n                \"paid_by\": \"RECIPIENT\",\n                \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n            }\n        ],\n        \"metadata\": {\n            \"adyen_balance_account_id\": \"BA3299Q223229Z5NHCM3R4HKQ\",\n            \"adyen_payment_psp_reference\": \"Q3LPXXS84P99HPV5\",\n            \"adyen_transaction_id\": \"EVJN42CL6225223W5NQBTJ62975JWWHKD\",\n            \"adyen_transaction_net_amount\": \"HKD 975.00\",\n            \"adyen_value_date\": \"2026-01-09T07:45:00Z\",\n            \"contract_id\": \"1234\",\n            \"key\": \"value\",\n            \"storeganise_invoice_ids\": \"ABCD\",\n            \"user_address\": \"1 Admiralty Drive\",\n            \"user_city\": \"Hong Kong\",\n            \"user_country\": \"HK\",\n            \"user_first_name\": \"John\",\n            \"user_last_name\": \"Doe\"\n        },\n        \"payment_details\": {\n            \"collection_entity_name\": \"Finverse Test\",\n            \"description\": \"TEST Payment\",\n            \"external_transaction_reference\": \"INV12345\",\n            \"processor_details\": {\n                \"auth_code\": \"014085\",\n                \"processor_id\": \"adyen\",\n                \"processor_reference\": \"CJRXVH53WM4GBQ65\",\n                \"result\": {\n                    \"result_code\": \"Authorised\"\n                }\n            },     \n            \"recurring_payment_mode\": \"NON_RECURRING\",       \n            \"references\": {\n                \"finverse_transaction_reference\": \"FV250101AABB\"\n            }\n        },\n        \"payment_id\": \"01JY8FZEZXR3RG0Z8XZQ5CCZB3\",\n        \"payment_method_id\": \"01JY8FZF0TTC86M1WWGH3G98SG\",\n        \"recipient\": {\n            \"name\": \"Finverse Test\"\n        },\n        \"recipient_account\": {\n            \"account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\"\n        },\n        \"sender\": {\n            \"external_user_id\": \"user_id_1||1750484358\",\n            \"name\": \"John Doe\",\n            \"user_details\": [],\n            \"user_id\": \"01JY8FZ5XEAQFW3GZZRYK72M1G\",\n            \"user_type\": \"UNKNOWN\"\n        },\n        \"status\": \"EXECUTED\",\n        \"surcharge_amount\": 575,\n        \"type\": \"CARD\",\n        \"updated_at\": \"2025-06-21T05:39:57.257Z\"\n    },\n    \"payment_details\": {\n        \"description\": \"TEST Payment\",\n        \"external_transaction_reference\": \"INV12345\"\n    },\n    \"payment_link_id\": \"01JY8FZ5X6T0CZ9QWP32BN5BS6\",\n    \"payment_metadata\": {\n        \"contract_id\": \"1234\",\n        \"key\": \"value\",\n        \"storeganise_invoice_ids\": \"ABCD\",\n        \"user_address\": \"1 Admiralty Drive\",\n        \"user_city\": \"Hong Kong\",\n        \"user_country\": \"HK\",\n        \"user_first_name\": \"John\",\n        \"user_last_name\": \"Doe\"\n    },\n    \"payment_method\": {\n        \"card\": {\n            \"card_details\": {\n                \"acquirer_authorization_reference\": \"47NVXVHP56H\",\n                \"brand\": \"Visa\",\n                \"brand_product_name\": \"visacommercialpremiumcredit\",\n                \"card_number_alias\": \"B116144140277410\",\n                \"collection_entity_name\": \"Finverse Test\",\n                \"country\": \"US\",\n                \"expiry_month\": 11,\n                \"expiry_year\": 2027,\n                \"fingerprint\": \"NpcujjlSU5amawol\",\n                \"finverse_authorization_reference\": \"FC2506181FBA\",\n                \"funding\": \"CREDIT\",\n                \"last4\": \"4242\",\n                \"processor_details\": {\n                    \"auth_code\": \"073614\",\n                    \"processor_id\": \"adyen\",\n                    \"processor_reference\": \"NHMBR2TR38H7G775\",\n                    \"token_id\": \"D49T5QZSPLSMC375\"\n                },\n                \"recurring_payment_mode\": \"VARIABLE_RECURRING\"\n            },\n            \"created_at\": \"2025-06-21T05:39:29.548Z\",\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"risk_data\": {\n                \"processor_risk_data\": {\n                    \"browser_type\": \"Chrome\",\n                    \"device_type\": \"Other\",\n                    \"shopper_country\": \"HK\",\n                    \"shopper_ip\": \"100.200.300.400\",\n                    \"shopper_locale\": \"en-US\"\n                }\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T05:39:56.629Z\"\n        },\n        \"integration_metadata\": {\n            \"adyen_metadata\": {\n                \"auth_code\": \"074768\",\n                \"payment_method_id\": \"S62PDW23P5M47Z75\",\n                \"psp_reference\": \"ZDQ767B8HZXRHBV5\",\n                \"recurring_processing_model\": \"UnscheduledCardOnFile\"\n            },\n            \"integration_id\": \"ADYEN\"\n        },\n        \"payment_method_id\": \"01JY8FZF0TTC86M1WWGH3G98SG\",\n        \"payment_method_type\": \"CARD\"\n    },\n    \"payment_setup_options\": {\n        \"autopay_enrollment_configuration\": {\n            \"display_enrollment_screen\": true,\n            \"enrollment_prefill_value\": \"YES\"\n        },\n        \"future_payments\": \"CLICK_TO_PAY\",\n        \"payment_method_types\": [\n            \"CARD\",\n            \"MANDATE\",\n            \"MANUAL\"\n        ],\n        \"recurring_payment_mode\": \"VARIABLE_RECURRING\"\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1750484358\",\n        \"name\": \"John Doe\",\n        \"user_id\": \"01JY8FZ5XEAQFW3GZZRYK72M1G\"\n    },\n    \"session_status\": \"COMPLETE\",\n    \"status\": \"PAID\",\n    \"unique_reference_id\": \"Inv12345|1750484358\",\n    \"updated_at\": \"2025-06-21T05:39:57.449Z\",\n    \"url\": \"https://pay.prod.finverse.net/link/01JY8FZ5X6T0CZ9QWP32BN5BS6\"\n}"},{"id":"942c2ff6-74ac-4992-bec0-b8a2e888d413","name":"Success (Setup mode successful with mandate)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/payment_links/{{payment_link_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1713754995"},{"key":"Date","value":"Mon, 22 Apr 2024 03:03:14 GMT"},{"key":"Content-Length","value":"1875"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"created_at\": \"2025-06-21T05:57:32.884Z\",\n    \"currency\": \"HKD\",\n    \"link_customizations\": {\n        \"language\": \"en\"\n    },\n    \"mode\": \"SETUP\",\n    \"payment_details\": {\n        \"description\": \"\",\n        \"external_transaction_reference\": \"\"\n    },\n    \"payment_link_id\": \"01JY8H0J2MF0ESNV1XPYTE8RX4\",\n    \"payment_method\": {\n        \"mandate\": {\n            \"created_at\": \"2025-06-21T05:58:18.257Z\",\n            \"fees\": [\n                {\n                    \"amount\": 0,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"mandate_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"currency\": \"HKD\",\n                \"dda_reference\": \"FINVERSE T-R885-FINV\",\n                \"description\": \"Payment link mandate\",\n                \"mandate_bank_reference\": \"01JY8H1X2H8FSQHV5DPPBAXTD8\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"start_date\": \"2025-06-21\",\n                \"transaction_limits\": {\n                    \"max_transaction_amount\": 500000,\n                    \"max_transaction_amount_set_by_payer_initial\": 5000\n                }\n            },\n            \"mandate_id\": \"01JY8H1ATJXEZGV3EDCK0MWY6Z\",\n            \"payment_method_id\": \"01JY8H1AX3TRC1TBHMB45WASEH\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750485452\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8H0J30ZBW17EG37128HRPN\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8H1W0C66V5F8NJW9CG62PF\",\n                \"account_number\": {\n                    \"number\": \"01JY8H1W6XJETFS21BEPV0BGEC\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"434XXXX49\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8H1W5T5FGB22TZCDBGDM33\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8H0J30ZBW17EG37128HRPN\"\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T05:58:18.257Z\"\n        },\n        \"payment_method_id\": \"01JY8H1AX3TRC1TBHMB45WASEH\",\n        \"payment_method_type\": \"MANDATE\"\n    },\n    \"payment_setup_options\": {\n        \"autopay_enrollment_configuration\": {\n            \"display_enrollment_screen\": false,\n            \"enrollment_prefill_value\": \"\"\n        },\n        \"future_payments\": \"AUTOPAY\"\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1750485452\",\n        \"name\": \"John Doe\",\n        \"user_id\": \"01JY8H0J30ZBW17EG37128HRPN\"\n    },\n    \"session_status\": \"COMPLETE\",\n    \"status\": \"SETUP_SUCCEEDED\",\n    \"unique_reference_id\": \"User12345|1750485452\",\n    \"updated_at\": \"2025-06-21T05:58:18.188Z\",\n    \"url\": \"https://pay.prod.finverse.net/link/01JY8H0J2MF0ESNV1XPYTE8RX4\"\n}"},{"id":"396a2707-d2c6-4cc2-9ec2-a5f28438bcc5","name":"Success (Setup mode successful with card)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payment_links/{{payment_link_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1723821943"},{"key":"Date","value":"Fri, 16 Aug 2024 15:25:43 GMT"},{"key":"Content-Length","value":"1161"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"created_at\": \"2025-06-21T05:59:21.736Z\",\n    \"currency\": \"HKD\",\n    \"link_customizations\": {\n        \"language\": \"en\"\n    },\n    \"mode\": \"SETUP\",\n    \"payment_details\": {\n        \"description\": \"\",\n        \"external_transaction_reference\": \"\"\n    },\n    \"payment_link_id\": \"01JY8H3WC8F622FHXR51Y94622\",\n    \"payment_method\": {\n        \"card\": {\n            \"card_details\": {\n                \"acquirer_authorization_reference\": \"NFXVXFX6LZ6\",\n                \"brand\": \"Visa\",\n                \"brand_product_name\": \"visacommercialpremiumcredit\",\n                \"card_number_alias\": \"C835178978045105\",\n                \"collection_entity_name\": \"Finverse Test\",\n                \"country\": \"US\",\n                \"expiry_month\": 1,\n                \"expiry_year\": 2029,\n                \"fingerprint\": \"NpcujjlSU5amawol\",\n                \"finverse_authorization_reference\": \"FC2506181FBA\",\n                \"funding\": \"CREDIT\",\n                \"last4\": \"4242\",\n                \"processor_details\": {\n                    \"auth_code\": \"073614\",\n                    \"processor_id\": \"adyen\",\n                    \"processor_reference\": \"NHMBR2TR38H7G775\",\n                    \"token_id\": \"D49T5QZSPLSMC375\"\n                },\n                \"recurring_payment_mode\": \"VARIABLE_RECURRING\"\n            },\n            \"created_at\": \"2025-06-21T05:59:27.549Z\",\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"risk_data\": {\n                \"processor_risk_data\": {\n                    \"browser_type\": \"Chrome\",\n                    \"device_type\": \"Other\",\n                    \"shopper_country\": \"HK\",\n                    \"shopper_ip\": \"100.200.300.400\",\n                    \"shopper_locale\": \"en-US\"\n                }\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T05:59:45.170Z\"\n        },\n        \"integration_metadata\": {\n            \"adyen_metadata\": {\n                \"auth_code\": \"011940\",\n                \"payment_method_id\": \"Q3FJRLC6ZKWKGZT5\",\n                \"psp_reference\": \"MZ2H58GZLMLWVLV5\",\n                \"recurring_processing_model\": \"UnscheduledCardOnFile\"\n            },\n            \"integration_id\": \"ADYEN\"\n        },\n        \"payment_method_id\": \"01JY8H414WA2G39Y18G6E62DFY\",\n        \"payment_method_type\": \"CARD\"\n    },\n    \"payment_setup_options\": {\n        \"autopay_enrollment_configuration\": {\n            \"display_enrollment_screen\": false,\n            \"enrollment_prefill_value\": \"\"\n        },\n        \"future_payments\": \"AUTOPAY\",\n        \"recurring_payment_mode\": \"VARIABLE_RECURRING\"\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1750485561\",\n        \"name\": \"John Doe\",\n        \"user_id\": \"01JY8H3WCKB99VSEVZ2P3ZRG35\"\n    },\n    \"session_status\": \"COMPLETE\",\n    \"status\": \"SETUP_SUCCEEDED\",\n    \"unique_reference_id\": \"User12345|1750485561\",\n    \"updated_at\": \"2025-06-21T05:59:45.889Z\",\n    \"url\": \"https://pay.prod.finverse.net/link/01JY8H3WC8F622FHXR51Y94622\"\n}"},{"id":"63b16072-c5e6-484d-8a01-4b7e482d9108","name":"Error (Payment Link ID not found)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","type":"text","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payment_links/01HMFVQPTG93XERNDJW52HYGN7"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1705910484"},{"key":"Date","value":"Mon, 22 Jan 2024 08:01:23 GMT"},{"key":"Content-Length","value":"229"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"payment link not found\",\n        \"error_code\": \"RESOURCE_NOT_FOUND\",\n        \"message\": \"Resource cannot be found. Resource does not exist, has been deleted, or is not accessible.\",\n        \"request_id\": \"1705910484\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"4db6be11-6bbb-4dce-942b-aa8b90c817c9","name":"Error (Manual bank payment never received)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","type":"text","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payment_links/{{payment_link_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1713754884"},{"key":"Date","value":"Mon, 22 Apr 2024 03:01:24 GMT"},{"key":"Content-Length","value":"2031"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 10000,\n    \"created_at\": \"2024-04-22T02:59:27.705Z\",\n    \"currency\": \"HKD\",\n    \"expires_at\": \"2024-04-22T03:59:27.705Z\",\n    \"link_customizations\": {\n        \"language\": \"en\"\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    },\n    \"mode\": \"PAYMENT\",\n    \"payment\": {\n        \"amount\": 10000,\n        \"created_at\": \"2024-04-22T03:01:19.668Z\",\n        \"currency\": \"HKD\",\n        \"error\": {\n            \"details\": \"We are unable to confirm receipt of this payment. Please verify that the payment was sent, and that the payment information provided was correct (e.g. sender accountholder name / account number). If you have verified that the payment was sent, please contact Finverse customer support (support@finverse.com).\",\n            \"error_code\": \"INTERNAL_SERVER_ERROR\",\n            \"message\": \"We encountered an internal error. Please contact Finverse customer support for further assistance.\",\n            \"request_id\": \"1713754884\",\n            \"type\": \"API_ERROR\"\n        },\n        \"fees\": [\n            {\n                \"amount\": 50,\n                \"currency\": \"HKD\",\n                \"paid_by\": \"RECIPIENT\",\n                \"paid_by_account_id\": \"01H5VEQ9DZP46TB3ZM3WPNT74H\"\n            }\n        ],\n        \"metadata\": {\n            \"contract_id\": \"1234\",\n            \"key\": \"value\"\n        },\n        \"payment_details\": {\n            \"description\": \"TEST Payment\",\n            \"external_transaction_reference\": \"INV12345\"\n        },\n        \"payment_id\": \"01HW1VX730SH5EPD1Q50443ZB7\",\n        \"recipient\": {\n            \"name\": \"Demo App\"\n        },\n        \"recipient_account\": {\n            \"account_id\": \"01H5VEQ9DZP46TB3ZM3WPNT74H\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\"\n        },\n        \"sender\": {\n            \"external_user_id\": \"user_id_1||1713754768\",\n            \"name\": \"John Doe\",\n            \"user_details\": [],\n            \"user_id\": \"01HW1VX0B6S0D13SMT100RZ1V6\",\n            \"user_type\": \"UNKNOWN\"\n        },\n        \"status\": \"FAILED\",\n        \"type\": \"MANUAL\",\n        \"updated_at\": \"2024-04-22T03:01:19.668Z\"\n    },\n    \"payment_details\": {\n        \"description\": \"TEST Payment\",\n        \"external_transaction_reference\": \"INV12345\"\n    },\n    \"payment_link_id\": \"01HW1VX0ASZ44YCABMJR4W03M3\",\n    \"payment_metadata\": {\n        \"contract_id\": \"1234\",\n        \"key\": \"value\"\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1713754768\",\n        \"name\": \"John Doe\",\n        \"user_id\": \"01HW1VX0B6S0D13SMT100RZ1V6\"\n    },\n    \"session_status\": \"FAILED\",\n    \"status\": \"CREATED\",\n    \"unique_reference_id\": \"Inv12345|1713754768\",\n    \"updated_at\": \"2024-04-22T02:59:27.705Z\",\n    \"url\": \"https://pay.prod.finverse.net/link/01HW1VX0ASZ44YCABMJR4W03M3\"\n}"}],"_postman_id":"b2723bd2-715a-4a34-ad22-57b46cc70906"},{"name":"/payment_links/{id}/cancel (Cancel Payment Link)","event":[{"listen":"test","script":{"id":"7670c6c5-b256-4a0c-8268-9bfdd2134668","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payment Link ID or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"payment_link_id\",","        \"error\"","    )","});","","//Payment Link status is CREATED","pm.test(\"Payment Link status is CANCELLED\", function() {","    pm.expect(jsonData.status).to.equal(\"CANCELLED\")","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"amount\": {\"type\":\"integer\"},","            \"created_at\": {\"type\":\"string\"},","            \"currency\": {\"type\":\"string\"},","            \"integration_metadata\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"integration_id\": {\"type\":\"string\"},","                    \"rapidstor_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_token\": {\"type\":\"string\"},","                            \"corp_code\": {\"type\":\"string\"},","                            \"i_anniv_days\": {\"type\":\"integer\"}, ","                            \"s_location_code\": {\"type\":\"string\"},","                            \"tenant_default_currency\": {\"type\":\"string\"},","                            \"tenant_id\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"account_token\",","                            \"corp_code\",","                            \"s_location_code\",","                            \"tenant_id\"","                        ]","                    }","                },","                \"required\": [","                    \"integration_id\"","                ]","            },","            \"link_customizations\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"countries\": {\"type\":\"array\"},","                    \"institution_status\": {\"type\":\"string\"},","                    \"language\": {","                        \"type\":\"string\",","                        \"enum\": [\"en\", \"ko\", \"vi\", \"zh\"]","                    },","                    \"link_mode\": {\"type\":\"string\"},","                    \"redirect_uri\": {\"type\":\"string\"},","                    \"ui_mode\": {","                        \"type\":\"string\",","                        \"enum\": [\"redirect\", \"standalone\", \"iframe\"]","                    }","                },","                \"required\": []","            },","            \"metadata\": {\"type\":\"object\"},","            \"mode\": {  ","                \"type\":\"string\",","                \"enum\": [\"PAYMENT\", \"SETUP\"]","            },","            \"payment\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"amount\": {\"type\":\"integer\"},","                    \"amount_total_with_surcharge\": {\"type\":\"integer\"},","                    \"created_at\": {\"type\":\"string\"},","                    \"currency\": {\"type\":\"string\"},","                    \"error\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"details\": {\"type\":\"string\"},","                            \"error_code\": {\"type\":\"string\"},","                            \"message\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                            }","                        },","                        \"required\": [","                            \"error_code\",","                            \"message\",","                            \"type\"","                        ] ","                    },","                    \"fees\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"amount\": {\"type\":\"integer\"},","                                \"currency\": {\"type\":\"string\"},","                                \"paid_by\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                },","                                \"paid_by_account_id\": {\"type\":\"string\"}","                            },","                            \"required\": [","                                \"amount\", ","                                \"currency\", ","                                \"paid_by\", ","                                \"paid_by_account_id\"","                            ]","                        }","                    },","                    \"metadata\": {\"type\":\"object\"},","                    \"payment_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"collection_entity_name\": {\"type\":\"string\"},","                            \"description\": {\"type\":\"string\"},","                            \"external_transaction_reference\": {\"type\": \"string\"},","                            \"mandate_id\": {\"type\":\"string\"},","                            \"processor_entity_name\": {\"type\":\"string\"},","                            \"processor_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"auth_code\": {\"type\":\"string\"},","                                    \"processor_id\": {\"type\":\"string\"},","                                    \"processor_reference\": {\"type\":\"string\"},","                                    \"result\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"decline_code\": {\"type\":\"string\"},","                                            \"decline_reason\": {\"type\":\"string\"},","                                            \"last_action\": {\"type\":\"string\"},","                                            \"result_code\": {\"type\":\"string\"},","                                            \"status\": {\"type\":\"string\"}","                                        },","                                        \"required\": [","                                           \"processor_id\"","                                        ]","                                    },","                                },","                                \"required\": []","                            },","                            \"recurring_payment_mode\": {","                                \"type\":\"string\",","                                \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                            },                       ","                            \"references\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"bank_transaction_reference\": {\"type\":\"string\"},","                                    \"dda_reference\": {\"type\":\"string\"},","                                    \"finverse_transaction_reference\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                            \"transaction_reference_id\": {\"type\": \"string\"} // TO BE DEPRECATED","                            },","                        \"required\": [","                            \"description\",","                            \"external_transaction_reference\"","                        ]","                    },","                    \"payment_id\": {\"type\":\"string\"},","                    \"payment_method\": { // SIMPLIFIED PAYMENT METHOD OBJECT -- TO BE EXPANDED LATER INTO FULL PAYMENT_METHOD OBJECT","                        \"type\": \"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"card\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"card_details\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"brand\": {\"type\":\"string\"},","                                            \"collection_entity_name\": {\"type\":\"string\"},","                                            \"country\": {\"type\":\"string\"},","                                            \"expiry_month\": {\"type\":\"integer\"},","                                            \"expiry_year\": {\"type\":\"integer\"}, ","                                            \"fingerprint\": {\"type\":\"string\"},","                                            \"finverse_authorization_reference\": {\"type\":\"string\"},","                                            \"funding\": {","                                                \"type\":\"string\",","                                                \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                                            },","                                            \"is_commercial\": {\"type\":\"boolean\"},","                                            \"last4\": {\"type\":\"string\"},","                                            \"processor_entity_name\": {\"type\":\"string\"},","                                            \"processor_details\": {","                                                \"type\":\"object\",","                                                \"additionalProperties\": false,","                                                \"properties\": {","                                                    \"auth_code\": {\"type\":\"string\"},","                                                    \"processor_id\": {\"type\":\"string\"},","                                                    \"processor_reference\": {\"type\":\"string\"},","                                                    \"token_id\": {\"type\":\"string\"},","                                                },","                                                \"required\": []","                                            },","                                            \"recurring_payment_mode\": {","                                                \"type\":\"string\",","                                                \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                                            }","                                        },","                                        \"required\": []","                                    }","                                },","                                \"required\": []","                            }","                        },","                        \"required\": [ ]","                    },","                    \"payment_method_id\":  {\"type\":\"string\"}, // TBD: MAY BE DEPRECATED LATER ONCE INCLUDED IN FULL PAYMENT_METHOD OBJECT","                    \"recipient\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"name\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"name\"","                        ]","                    },","                    \"recipient_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            }","                        },","                        \"required\": [","                            \"account_id\",","                            \"account_type\"","                        ]","                    },","                    \"sender\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"external_user_id\": {\"type\":\"string\"},","                            \"name\": {\"type\":\"string\"},","                            \"user_details\": {","                                \"type\":[\"array\",\"null\"],","                                \"items\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"details_type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                        },","                                        \"values\": {","                                            \"type\": \"array\",","                                            \"items\": {","                                                \"type\": \"string\"","                                            }","                                        }","                                    },","                                    \"required\": [","                                        \"details_type\",","                                        \"values\"","                                    ]","                                }","                            },","                            \"user_id\": {\"type\":\"string\"},","                            \"user_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                            }","                        },","                        \"required\": [","                            \"external_user_id\",","                            //\"name\", // TO BE ENFORCED","                            \"user_id\",","                            \"user_type\"","                        ]","                    },","                    \"sender_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_number\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"number\": {\"type\":\"string\"},","                                    \"type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"IBAN\", \"LOCAL\"]","                                    }","                                },","                                \"required\": [","                                    \"number\",","                                    \"type\"","                                ]","                            },","                            \"account_number_masked\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            },","                            \"accountholder_name\": {\"type\":\"string\"},","                            \"bank_code\": {\"type\":\"string\"},","                            \"institution_id\": {\"type\":\"string\"},","                            \"institution_name\": {\"type\":\"string\"},","                            \"user_id\": {\"type\":\"string\"},","                        },","                        \"required\": [","                            \"account_type\",","                            \"user_id\"","                        ]","                    },","                    \"status\": {","                        \"type\":\"string\",","                        \"enum\": [\"CREATED\", \"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"SUBMITTED\", \"EXECUTED\", \"CANCELLED\", \"FAILED\"]","                    },","                    \"surcharge_amount\": {\"type\":\"integer\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"CARD\", \"MANDATE\", \"MANUAL\", \"SINGLE\"]","                    },","                    \"updated_at\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"amount\",","                    \"amount_total_with_surcharge\",","                    \"created_at\",","                    \"currency\",","                    \"fees\",","                    \"payment_details\",","                    \"payment_id\",","                    //\"payment_method\", // TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT METHOD","                    //\"payment_method_id\", // TBC: TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT_METHOD_ID","                    \"recipient\",","                    \"recipient_account\",","                    \"sender\",","                    \"status\",","                    \"surcharge_amount\",","                    \"type\",","                    \"updated_at\"","                ]","            },","            \"payment_details\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"description\": {\"type\":\"string\"},","                    \"external_transaction_reference\": {\"type\":\"string\"}","                    },","                \"required\": []","            },","            \"payment_link_id\": {\"type\":\"string\"},","            \"payment_metadata\": {\"type\":\"object\"},","            \"payment_method\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"card\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"card_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"acquirer_authorization_reference\": {\"type\":\"string\"},","                                    \"brand\": {\"type\":\"string\"},","                                    \"brand_product_name\": {\"type\":\"string\"},","                                    \"card_number_alias\": {\"type\":\"string\"},","                                    \"collection_entity_name\": {\"type\":\"string\"},","                                    \"country\": {\"type\":\"string\"},","                                    \"expiry_month\": {\"type\":\"integer\"},","                                    \"expiry_year\": {\"type\":\"integer\"}, ","                                    \"fingerprint\": {\"type\":\"string\"},","                                    \"finverse_authorization_reference\": {\"type\":\"string\"},","                                    \"funding\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                                    },","                                    \"is_commercial\": {\"type\":\"boolean\"},","                                    \"last4\": {\"type\":\"string\"},","                                    \"processor_entity_name\": {\"type\":\"string\"},","                                    \"processor_details\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"auth_code\": {\"type\":\"string\"},","                                            \"processor_id\": {\"type\":\"string\"},","                                            \"processor_reference\": {\"type\":\"string\"},","                                            \"token_id\": {\"type\":\"string\"},","                                        },","                                        \"required\": []","                                    },","                                    \"recurring_payment_mode\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                                    }","                                },","                                \"required\": []","                            },","                            \"created_at\": {\"type\":\"string\"},","                            \"recipient_account\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"account_id\": {\"type\":\"string\"},","                                    \"account_type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                    }","                                },","                                \"required\": [\"account_id\", \"account_type\"]","                            },","                            \"risk_data\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"processor_risk_data\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"browser_type\": {\"type\":\"string\"},","                                            \"device_type\": {\"type\":\"string\"},","                                            \"shopper_country\": {\"type\":\"string\"},","                                            \"shopper_ip\": {\"type\":\"string\"},","                                            \"shopper_locale\": {\"type\":\"string\"}","                                        },","                                        \"required\": []","                                    },","                                },","                                \"required\": []","                            },","                            \"status\": {","                                \"type\":\"string\",","                                \"enum\": [\"PROCESSING\", \"SUCCEEDED\", \"CANCELLED\"]","                            },","                            \"updated_at\": {\"type\":\"string\"},","                        },","                        \"required\" : [","                            \"created_at\",","                            \"status\",","                            \"updated_at\"","                        ]","                    },","                    \"integration_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"adyen_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"auth_code\": {\"type\":\"string\"},","                                    \"payment_method_id\": {\"type\":\"string\"},","                                    \"psp_reference\": {\"type\":\"string\"}, ","                                    \"recurring_processing_model\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"payment_method_id\",","                                    \"recurring_processing_model\"","                                ]","                            },","                            \"cybersource_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"payment_token\": {\"type\":\"string\"}  ","                                },","                                \"required\": [","                                    \"payment_token\"","                                ]","                            },","                            \"gocardless_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"funds_settlement\": {\"type\":\"string\"},","                                    \"last_action\":  {\"type\":\"string\"},","                                    \"mandate_id\": {\"type\":\"string\"},","                                    \"next_possible_charge_date\": {\"type\":\"string\"}, ","                                    \"payments_require_approval\": {\"type\":\"boolean\"},","                                    \"reference\": {\"type\":\"string\"},","                                    \"scheme\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"mandate_id\"","                                ]","                            },","                            \"integration_id\": {\"type\":\"string\"},","                            \"stripe_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"customer\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"id\": {\"type\":\"string\"}","                                        },","                                        \"required\": [\"id\"] ","                                    },","                                    \"payment_method\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"id\": {\"type\":\"string\"}","                                        },","                                        \"required\": [\"id\"] ","                                    },","                                },","                                \"required\": [","                                    \"customer\",","                                    \"payment_method\"","                                ]","                            }","                        },","                        \"required\": [","                            \"integration_id\"","                        ]","                    },","                    \"mandate\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"created_at\": {\"type\":\"string\"},  ","                            \"error\": {","                                \"type\": \"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"details\": {\"type\":\"string\"},","                                    \"error_code\": {\"type\":\"string\"},","                                    \"message\": {\"type\":\"string\"},","                                    \"request_id\": {\"type\":\"string\"},","                                    \"type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                                    }","                                },","                                \"required\" : [","                                    \"error_code\",","                                    \"message\",","                                    \"request_id\",","                                    \"type\"","                                ]","                            },","                            \"fees\": {","                                \"type\":\"array\",","                                \"items\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"amount\": {\"type\":\"integer\"},","                                        \"currency\": {\"type\":\"string\"},","                                        \"paid_by\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                        },","                                        \"paid_by_account_id\": {\"type\":\"string\"}","                                    },","                                    \"required\": [","                                        \"amount\", ","                                        \"currency\", ","                                        \"paid_by\", ","                                        \"paid_by_account_id\"","                                    ]","                                }","                            },","                            \"mandate_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"collection_entity_name\": {\"type\":\"string\"},","                                    \"currency\": {\"type\":\"string\"},","\t\t\t                        \"dda_reference\": {\"type\":\"string\"},","                                    \"description\": {\"type\":\"string\"},","                                    \"end_date\": {\"type\":\"string\"},","                                    \"mandate_bank_reference\": {\"type\":\"string\"},","                                    \"payment_schedule\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"amount\": {\"type\":\"integer\"},","                                            \"frequency\": {\"type\":\"string\"}","                                        },","                                        \"required\": [","                                            \"amount\",","                                            \"frequency\"","                                        ]","                                    },","                                    \"processor_entity_name\": {\"type\":\"string\"},","                                    \"start_date\": {\"type\":\"string\"},","                                    \"transaction_limits\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"max_period_amount\": {\"type\":\"integer\"},","                                            \"max_period_count\": {\"type\":\"integer\"},","                                            \"max_transaction_amount\": {\"type\":\"integer\"},","                                            \"max_transaction_amount_set_by_payer_initial\": {\"type\":\"integer\"},","                                            \"period\": {\"type\":\"string\"}","                                        },","                                        \"required\": []","                                    }","                                },","                                \"required\": [","                                    \"currency\",","                                    \"description\"","                                ]","                            },","                            \"mandate_id\": {\"type\":\"string\"},","                            \"metadata\": {\"type\":\"object\"},","                            \"payment_method_id\": {\"type\":\"string\"},","                            \"recipient\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"name\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"name\"","                                ]","                            },","                            \"recipient_account\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"account_id\": {\"type\":\"string\"},","                                    \"account_type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                    },","                                    \"name\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"account_id\",","                                    \"account_type\"","                                ]","                            },","                            \"sender\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"external_user_id\": {\"type\":\"string\"},","                                    \"name\": {\"type\":\"string\"},","                                    \"user_details\": {","                                        \"type\":[\"array\",\"null\"],","                                        \"items\": {","                                            \"type\":\"object\",","                                            \"additionalProperties\": false,","                                            \"properties\": {","                                                \"details_type\": {","                                                    \"type\":\"string\",","                                                    \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                                },","                                                \"values\": {","                                                    \"type\": \"array\",","                                                    \"items\": {","                                                        \"type\": \"string\"","                                                    }","                                                }","                                            },","                                            \"required\": [","                                                \"details_type\",","                                                \"values\"","                                            ]","                                        }","                                    },","                                    \"user_id\": {\"type\":\"string\"},","                                    \"user_type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                                    }","                                },","                                \"required\": [","                                    \"external_user_id\",","                                    //\"name\", // TO BE ENFORCED","                                    \"user_id\",","                                    \"user_type\"","                                ]","                            },","                            \"sender_account\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"account_id\": {\"type\":\"string\"},","                                    \"account_number\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"number\": {\"type\":\"string\"},","                                            \"type\": {","                                                \"type\":\"string\",","                                                \"enum\": [\"IBAN\", \"LOCAL\"]","                                            }","                                        },","                                        \"required\": [","                                            \"number\",","                                            \"type\"","                                        ]","                                    },","                                    \"account_number_masked\": {\"type\":\"string\"},","                                    \"account_type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                    },","                                    \"accountholder_name\": {\"type\":\"string\"},","                                    \"bank_code\": {\"type\":\"string\"},","                                    \"institution_id\": {\"type\":\"string\"},","                                    \"institution_name\": {\"type\":\"string\"},","                                    \"user_id\": {\"type\":\"string\"},","                                },","                                \"required\": [","                                    \"account_type\",","                                    \"user_id\"","                                ]","                            },","                            \"status\": {","                                \"type\":\"string\",","                                \"enum\": [\"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"FAILED\"]","                            },","                            \"updated_at\": {\"type\":\"string\"}","                        },","                        \"required\" : [","                            \"created_at\",","                            \"fees\",","                            \"mandate_details\",","                            \"mandate_id\",","                            \"payment_method_id\",","                            \"recipient\",","                            \"sender\",","                            \"status\",","                            \"updated_at\"","                        ]","                    },","                    \"payment_method_id\": {\"type\": \"string\"},","                    \"payment_method_type\": {","                        \"type\": \"string\",","                        \"enum\": [\"CARD\", \"MANDATE\"]","                    }","                },","                \"if\": {","                    \"properties\": {","                        \"payment_method_type\": {\"const\": \"CARD\"}","                    }","                },","                \"then\": {","                    \"required\" : [","                        \"card\",","                        \"payment_method_id\",","                        \"payment_method_type\"","                    ]","                },","                \"if\": {","                    \"properties\": {","                        \"payment_method_type\": {\"const\": \"MANDATE\"}","                    }","                },","                \"then\": {","                    \"required\" : [","                        \"mandate\",","                        \"payment_method_id\",","                        \"payment_method_type\"","                    ]","                }","            },","            \"payment_setup_options\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"autopay_enrollment_configuration\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"display_enrollment_screen\": {\"type\":\"boolean\"},","                            \"enrollment_prefill_value\": {","                                \"type\":\"string\",","                                \"enum\": [\"YES\", \"NO\", \"\"]","                            }","                        },","                        \"required\": [","                            \"display_enrollment_screen\"","                        ]","                    },","                    \"future_payments\": {","                        \"type\":\"string\",","                        \"enum\": [\"AUTOPAY\", \"CLICK_TO_PAY\"]","                    },","                    \"mandate_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"description\": {\"type\":\"string\"},","                            \"end_date\": {\"type\":\"string\"},","                            \"payment_schedule\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"amount\": {\"type\":\"integer\"},","                                    \"frequency\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"amount\",","                                    \"frequency\"","                                ]","                            },","                            \"start_date\": {\"type\":\"string\"},","                            \"transaction_limits\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"max_period_amount\": {\"type\":\"integer\"},","                                    \"max_period_count\": {\"type\":\"integer\"},","                                    \"max_transaction_amount\": {\"type\":\"integer\"},","                                    \"period\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"max_transaction_amount\"","                                ]","                            }","                        },","                        \"required\": []","                    },","                    \"payment_method_types\": {","                        \"type\":\"array\",","                        \"additionalProperties\": false,","                        \"items\": {","                            \"additionalProperties\": false,","                            \"type\":\"string\",","                            \"enum\": [\"CARD\", \"MANDATE\", \"MANUAL\"]","                        }","                    },","                    \"recipient_account_filters\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"business_unit\": {\"type\":\"string\"}","                        },","                        \"required\": []","                    },","                    \"recurring_payment_mode\": {","                        \"type\":\"string\",","                        \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                    }","                },","                \"required\": [","                    \"autopay_enrollment_configuration\",","                    \"recurring_payment_mode\"","                ]","            },","            \"sender\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"email\": {\"type\":\"string\"},","                    \"external_user_id\": {\"type\":\"string\"},","                    \"name\": {\"type\":\"string\"},","                    \"user_details\": {","                        \"type\":[\"array\",\"null\"],","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                },","                                \"values\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"type\": \"string\"","                                    }","                                }","                            },","                            \"required\": [","                                \"details_type\",","                                \"values\"","                            ]","                        }","                    },","                    \"user_id\": {\"type\":\"string\"},","                    \"user_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                    }","                },","                \"required\": [","                    \"external_user_id\",","                    //\"name\", // TO BE ENFORCED","                    \"user_id\",","                ]","            },","            \"session_status\": {","                \"type\":\"string\",","                \"enum\": [\"OPEN\", \"PROCESSING\", \"COMPLETE\", \"FAILED\"]","            },","            \"status\": {","                \"type\":\"string\",","                \"enum\": [\"CREATED\", \"CANCELLED\", \"PAID\", \"SETUP_SUCCEEDED\"]","            },","            \"unique_reference_id\": {\"type\":\"string\"},","            \"updated_at\": {\"type\":\"string\"},","            \"url\": {\"type\":\"string\"}","        },","        \"if\": {","            \"properties\": {","                \"mode\": {\"const\": \"PAYMENT\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"amount\",","                \"created_at\",","                \"currency\",","                \"mode\",","                \"payment_link_id\",","                \"sender\",","                \"session_status\",","                \"status\",","                \"updated_at\",","                \"unique_reference_id\",","                \"url\"","            ]","        },","        \"if\": {","            \"properties\": {","                \"mode\": {\"const\": \"SETUP\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"created_at\",","                \"currency\",","                \"mode\",","                \"payment_link_id\",","                \"payment_setup_options\",","                \"sender\",","                \"session_status\",","                \"status\",","                \"updated_at\",","                \"unique_reference_id\",","                \"url\"","            ]","        }","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"bf285e4c-4696-4c59-b87c-8d64a04e1797","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"url":"https://api.prod.finverse.net/payment_links/{{payment_link_id}}/cancel","description":"<p>Cancel a Payment Link (using a specific <code>payment_link_id</code>). This sets the Payment Link <code>status</code> to <code>CANCELLED</code> and Finverse will no longer process any user inputs or payments for the Payment Link.</p>\n<p>Cancellation is optional.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"response-fields\">Response fields</h2>\n<p>The response is a Payment Link object, or an error object if the Payment Llink is not cancellable (e.g. payment is already processing).</p>\n<p>Refer to Payment Link object data model in <code>GET /payments_links/{payment_link_id}</code>.</p>\n","urlObject":{"path":["payment_links","{{payment_link_id}}","cancel"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"030167a4-18d5-46ae-be42-35b479f3d88d","name":"Success (Link cancelled)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payment_links/{{payment_link_id}}/cancel"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1723822333"},{"key":"Date","value":"Fri, 16 Aug 2024 15:32:12 GMT"},{"key":"Content-Length","value":"771"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 10000,\n    \"created_at\": \"2024-08-16T15:32:09.814Z\",\n    \"currency\": \"HKD\",\n    \"link_customizations\": {\n        \"language\": \"en\"\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"tracking_flow\": \"webapp-checkout\"\n    },\n    \"mode\": \"PAYMENT\",\n    \"payment_details\": {\n        \"description\": \"TEST Payment\",\n        \"external_transaction_reference\": \"INV12345\"\n    },\n    \"payment_link_id\": \"01J5DX2KYPS8E35HRTPVM545B1\",\n    \"payment_metadata\": {\n        \"contract_id\": \"1234\",\n        \"key\": \"value\"\n    },\n    \"sender\": {\n        \"email\": \"info+test@finverse.com\",\n        \"external_user_id\": \"user_id_1||1723822330\",\n        \"name\": \"John Doe\",\n        \"user_id\": \"01J5DX2KZ39YTKMDHGFTAVT2XR\"\n    },\n    \"session_status\": \"OPEN\",\n    \"status\": \"CANCELLED\",\n    \"unique_reference_id\": \"Inv12345|1723822330\",\n    \"updated_at\": \"2024-08-16T15:32:12.980Z\",\n    \"url\": \"https://pay.prod.finverse.net/link/01J5DX2KYPS8E35HRTPVM545B1\"\n}"},{"id":"476567ba-a6aa-4918-ac45-7738445b44a5","name":"Error (Link not cancellable)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","type":"text","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payment_links/{{payment_link_id}}/cancel"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1709288382"},{"key":"Date","value":"Fri, 01 Mar 2024 10:19:42 GMT"},{"key":"Content-Length","value":"192"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"Payment link cannot be cancelled (status: IN_PROGRESS)\",\n        \"error_code\": \"NOT_CANCELLABLE\",\n        \"message\": \"Cancellation not allowed\",\n        \"request_id\": \"1709288382\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"c6a012cb-f025-4102-98c7-2d5a549a9e6e","name":"Error (Link not cancellable: Setup mode already successful)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","type":"text","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payment_links/{{payment_link_id}}/cancel"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1713755415"},{"key":"Date","value":"Mon, 22 Apr 2024 03:10:14 GMT"},{"key":"Content-Length","value":"218"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"\",\n        \"error_code\": \"INTERNAL_SERVER_ERROR\",\n        \"message\": \"We encountered an internal error. Please contact Finverse customer support for further assistance.\",\n        \"request_id\": \"1713755415\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"93827cb5-d092-4885-a801-f93e6f732e87","name":"Error (Payment Link ID not found)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","type":"text","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payment_links/01HMFVQPTG93XERNDJW52HYGN7/cancel"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1705910432"},{"key":"Date","value":"Mon, 22 Jan 2024 08:00:31 GMT"},{"key":"Content-Length","value":"207"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"\",\n        \"error_code\": \"RESOURCE_NOT_FOUND\",\n        \"message\": \"Resource cannot be found. Resource does not exist, has been deleted, or is not accessible.\",\n        \"request_id\": \"1705910432\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"bf285e4c-4696-4c59-b87c-8d64a04e1797"}],"id":"749b06fe-1ca2-4317-a5fb-45eb9db4a10c","description":"<p><strong>Payment Links are our recommended integration approach for most collections use-cases</strong>, providing you with:</p>\n<ul>\n<li><p>the fastest/easiest integration path</p>\n</li>\n<li><p>out-of-the-box access to multiple payment methods (bank direct debit, FPS/PayNow QR codes, credit cards/wallets), configuration options and the latest Finverse features.</p>\n</li>\n</ul>\n<p>Payment Links are flexible by design, and can support multiple user flows, including:</p>\n<ol>\n<li><p><strong>Payments mode</strong></p>\n<ol>\n<li><p>Collect one-time payments from users</p>\n</li>\n<li><p>Collect payment from new users while storing payment methods for future payments</p>\n</li>\n<li><p>Collect payments from returning users using their stored payment method (\"Click to Pay\" feature)</p>\n</li>\n<li><p>Automatically collect payments from users using their stored payment method (\"Autopay\" feature, see below)</p>\n</li>\n</ol>\n</li>\n<li><p><strong>Setup mode</strong></p>\n<ol>\n<li><p>Register users' payment method for future payments (without collecting a payment now)</p>\n</li>\n<li><p>Allow users to manage/edit their stored payment methods and Autopay consent</p>\n</li>\n<li><p>Automatically collect payments from users using their stored payment method (\"Autopay\" feature, see below)</p>\n</li>\n</ol>\n</li>\n</ol>\n<p><strong>Autopay flow (variable recurring payments)</strong></p>\n<p>Payment Links can be used to automatically collect payments from users on-demand (variable amount &amp; timing), by:</p>\n<ul>\n<li><p>Registering the user's payment method (e.g. bank direct debit or credit card), via the Finverse Link UI</p>\n</li>\n<li><p>Collecting the user's consent for automated payments, via the Finverse Link UI</p>\n</li>\n<li><p>Initiating payments on-demand: (i) by using <code>POST /payments</code>, or (ii) by connecting your ERP/CRM/billing/invoicing platform so Finverse can automatically initiate payments when users' bills come due (contact Finverse to discuss ERP/CRM integration options).</p>\n</li>\n</ul>\n","event":[{"listen":"prerequest","script":{"id":"88ec6b26-f9dd-48cb-a26c-61e618564a26","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"f3d7964c-79cf-437e-9ca0-2cebc0c7dcab","type":"text/javascript","exec":[""]}}],"_postman_id":"749b06fe-1ca2-4317-a5fb-45eb9db4a10c"},{"name":"Payment Methods","item":[{"name":"01 - Fetch Payment Methods","item":[{"name":"/payment_methods (Get Payment Methods by User)","event":[{"listen":"test","script":{"id":"7670c6c5-b256-4a0c-8268-9bfdd2134668","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payment Methods or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"payment_methods\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"payment_methods\": {","                \"type\": \"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"card\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"card_details\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"acquirer_authorization_reference\": {\"type\":\"string\"},","                                        \"brand\": {\"type\":\"string\"},","                                        \"brand_product_name\": {\"type\":\"string\"},","                                        \"card_number_alias\": {\"type\":\"string\"},","                                        \"collection_entity_name\": {\"type\":\"string\"},","                                        \"country\": {\"type\":\"string\"},","                                        \"expiry_month\": {\"type\":\"integer\"},","                                        \"expiry_year\": {\"type\":\"integer\"}, ","                                        \"fingerprint\": {\"type\":\"string\"},","                                        \"finverse_authorization_reference\": {\"type\":\"string\"},","                                        \"funding\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                                        },","                                        \"is_commercial\": {\"type\":\"boolean\"},","                                        \"last4\": {\"type\":\"string\"},","                                        \"processor_entity_name\": {\"type\":\"string\"},","                                        \"processor_details\": {","                                            \"type\":\"object\",","                                            \"additionalProperties\": false,","                                            \"properties\": {","                                                \"auth_code\": {\"type\":\"string\"},","                                                \"processor_id\": {\"type\":\"string\"},","                                                \"processor_reference\": {\"type\":\"string\"},","                                                \"token_id\": {\"type\":\"string\"},","                                            },","                                            \"required\": []","                                        },","                                        \"recurring_payment_mode\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                                        }","                                    },","                                    \"required\": []","                                },","                                \"created_at\": {\"type\":\"string\"},","                                \"recipient_account\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"account_id\": {\"type\":\"string\"},","                                        \"account_type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                        }","                                    },","                                    \"required\": [\"account_id\", \"account_type\"]","                                },","                                \"risk_data\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"processor_risk_data\": {","                                            \"type\":\"object\",","                                            \"additionalProperties\": false,","                                            \"properties\": {","                                                \"browser_type\": {\"type\":\"string\"},","                                                \"device_type\": {\"type\":\"string\"},","                                                \"shopper_country\": {\"type\":\"string\"},","                                                \"shopper_ip\": {\"type\":\"string\"},","                                                \"shopper_locale\": {\"type\":\"string\"}","                                            },","                                            \"required\": []","                                        },","                                    },","                                    \"required\": []","                                },","                                \"status\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"PROCESSING\", \"SUCCEEDED\", \"CANCELLED\"]","                                },","                                \"updated_at\": {\"type\":\"string\"},","                            },","                            \"required\" : [","                                \"created_at\",","                                \"status\",","                                \"updated_at\"","                            ]","                        },","                        \"integration_metadata\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"adyen_metadata\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"auth_code\": {\"type\":\"string\"},","                                        \"payment_method_id\": {\"type\":\"string\"},","                                        \"psp_reference\": {\"type\":\"string\"}, ","                                        \"recurring_processing_model\": {\"type\":\"string\"}","                                    },","                                    \"required\": [","                                        \"payment_method_id\",","                                        \"recurring_processing_model\"","                                    ]","                                },","                                \"cybersource_metadata\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"payment_token\": {\"type\":\"string\"}  ","                                    },","                                    \"required\": [","                                        \"payment_token\"","                                    ]","                                },","                                \"gocardless_metadata\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"funds_settlement\": {\"type\":\"string\"},","                                        \"last_action\":  {\"type\":\"string\"},","                                        \"mandate_id\": {\"type\":\"string\"},","                                        \"next_possible_charge_date\": {\"type\":\"string\"}, ","                                        \"payments_require_approval\": {\"type\":\"boolean\"},","                                        \"reference\": {\"type\":\"string\"},","                                        \"scheme\": {\"type\":\"string\"},","                                        \"status\": {\"type\":\"string\"}","                                    },","                                    \"required\": [","                                        \"mandate_id\"","                                    ]","                                },","                                \"integration_id\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"ADYEN\", \"CYBERSOURCE\", \"GOCARDLESS\", \"STRIPE\"]","                                },","                                \"stripe_metadata\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"customer\": {","                                            \"type\":\"object\",","                                            \"additionalProperties\": false,","                                            \"properties\": {","                                                \"id\": {\"type\":\"string\"}","                                            },","                                            \"required\": [\"id\"] ","                                        },","                                        \"payment_method\": {","                                            \"type\":\"object\",","                                            \"additionalProperties\": false,","                                            \"properties\": {","                                                \"id\": {\"type\":\"string\"}","                                            },","                                            \"required\": [\"id\"] ","                                        },","                                    },","                                    \"required\": [","                                        \"customer\",","                                        \"payment_method\"","                                    ]","                                }","                            },","                            \"required\": [","                                \"integration_id\"","                            ]","                        },","                        \"mandate\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"created_at\": {\"type\":\"string\"},  ","                                \"error\": {","                                    \"type\": \"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"details\": {\"type\":\"string\"},","                                        \"error_code\": {\"type\":\"string\"},","                                        \"message\": {\"type\":\"string\"},","                                        \"type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                                        }","                                    },","                                    \"required\" : [","                                        \"error_code\",","                                        \"message\",","                                        \"type\"","                                    ]","                                },","                                \"fees\": {","                                    \"type\":\"array\",","                                    \"items\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"amount\": {\"type\":\"integer\"},","                                            \"currency\": {\"type\":\"string\"},","                                            \"paid_by\": {","                                                \"type\":\"string\",","                                                \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                            },","                                            \"paid_by_account_id\": {\"type\":\"string\"}","                                        },","                                        \"required\": [","                                            \"amount\", ","                                            \"currency\", ","                                            \"paid_by\", ","                                            \"paid_by_account_id\"","                                        ]","                                    }","                                },","                                \"mandate_details\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"collection_entity_name\": {\"type\":\"string\"},","                                        \"currency\": {\"type\":\"string\"},","                                        \"dda_reference\": {\"type\":\"string\"},","                                        \"description\": {\"type\":\"string\"},","                                        \"end_date\": {\"type\":\"string\"},","                                        \"mandate_bank_reference\": {\"type\":\"string\"},","                                        \"payment_schedule\": {","                                            \"type\":\"object\",","                                            \"additionalProperties\": false,","                                            \"properties\": {","                                                \"amount\": {\"type\":\"integer\"},","                                                \"frequency\": {\"type\":\"string\"}","                                            },","                                            \"required\": [","                                                \"amount\",","                                                \"frequency\"","                                            ]","                                        },","                                        \"processor_entity_name\": {\"type\":\"string\"},","                                        \"start_date\": {\"type\":\"string\"},","                                        \"transaction_limits\": {","                                            \"type\":\"object\",","                                            \"additionalProperties\": false,","                                            \"properties\": {","                                                \"max_period_amount\": {\"type\":\"integer\"},","                                                \"max_period_count\": {\"type\":\"integer\"},","                                                \"max_transaction_amount\": {\"type\":\"integer\"},","                                                \"max_transaction_amount_set_by_payer_initial\": {\"type\":\"integer\"},","                                                \"period\": {\"type\":\"string\"}","                                            },","                                            \"required\": []","                                        }","                                    },","                                    \"required\": [","                                        \"currency\",","                                        \"description\"","                                    ]","                                },","                                \"mandate_id\": {\"type\":\"string\"},","                                \"metadata\": {\"type\":\"object\"},","                                \"payment_method_id\": {\"type\":\"string\"},","                                \"recipient\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"name\": {\"type\":\"string\"}","                                    },","                                    \"required\": [","                                        \"name\"","                                    ]","                                },","                                \"recipient_account\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"account_id\": {\"type\":\"string\"},","                                        \"account_type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                        },","                                        \"name\": {\"type\":\"string\"}","                                    },","                                    \"required\": [","                                        \"account_id\",","                                        \"account_type\"","                                    ]","                                },","                                \"sender\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"external_user_id\": {\"type\":\"string\"},","                                        \"name\": {\"type\":\"string\"},","                                        \"user_details\": {","                                            \"type\":[\"array\",\"null\"],","                                            \"items\": {","                                                \"type\":\"object\",","                                                \"additionalProperties\": false,","                                                \"properties\": {","                                                    \"details_type\": {","                                                        \"type\":\"string\",","                                                        \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                                    },","                                                    \"values\": {","                                                        \"type\": \"array\",","                                                        \"items\": {","                                                            \"type\": \"string\"","                                                        }","                                                    }","                                                },","                                                \"required\": [","                                                    \"details_type\",","                                                    \"values\"","                                                ]","                                            }","                                        },","                                        \"user_id\": {\"type\":\"string\"},","                                        \"user_type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                                        }","                                    },","                                    \"required\": [","                                        \"external_user_id\",","                                        //\"name\", // TO BE ENFORCED","                                        \"user_id\",","                                        \"user_type\"","                                    ]","                                },","                                \"sender_account\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"account_id\": {\"type\":\"string\"},","                                        \"account_number\": {","                                            \"type\":\"object\",","                                            \"additionalProperties\": false,","                                            \"properties\": {","                                                \"number\": {\"type\":\"string\"},","                                                \"type\": {","                                                    \"type\":\"string\",","                                                    \"enum\": [\"IBAN\", \"LOCAL\"]","                                                }","                                            },","                                            \"required\": [","                                                \"number\",","                                                \"type\"","                                            ]","                                        },","                                        \"account_number_masked\": {\"type\":\"string\"},","                                        \"account_type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                        },","                                        \"accountholder_name\": {\"type\":\"string\"},","                                        \"bank_code\": {\"type\":\"string\"},","                                        \"institution_id\": {\"type\":\"string\"},","                                        \"institution_name\": {\"type\":\"string\"},","                                        \"user_id\": {\"type\":\"string\"},","                                    },","                                    \"required\": [","                                        \"account_type\",","                                        \"user_id\"","                                    ]","                                },","                                \"status\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"CLOSED\", \"FAILED\"]","                                },","                                \"updated_at\": {\"type\":\"string\"}","                            },","                            \"required\" : [","                                \"created_at\",","                                \"fees\",","                                \"mandate_details\",","                                \"mandate_id\",","                                \"payment_method_id\",","                                \"recipient\",","                                \"sender\",","                                \"status\",","                                \"updated_at\"","                            ]","                        },","                        \"payment_method_id\": {\"type\": \"string\"},","                        \"payment_method_type\": {","                            \"type\": \"string\",","                            \"enum\": [\"CARD\", \"MANDATE\"]","                        }","                    },","                    \"if\": {","                        \"properties\": {","                            \"payment_method_type\": {\"const\": \"CARD\"}","                        }","                    },","                    \"then\": {","                        \"required\" : [","                            \"card\",","                            \"payment_method_id\",","                            \"payment_method_type\"","                        ]","                    },","                    \"if\": {","                        \"properties\": {","                            \"payment_method_type\": {\"const\": \"MANDATE\"}","                        }","                    },","                    \"then\": {","                        \"required\" : [","                            \"mandate\",","                            \"payment_method_id\",","                            \"payment_method_type\"","                        ]","                    }","                }","            },","            \"sender\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"autopay_consent\": {\"type\":\"boolean\"},","                    \"created_at\": {\"type\":\"string\"},","                    \"email\": {\"type\":\"string\"},","                    \"external_user_id\": {\"type\":\"string\"},","                    \"integration_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"integration_id\": {\"type\":\"string\"},","                            \"rapidstor_metadata\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"account_token\": {\"type\":\"string\"},","                                    \"corp_code\": {\"type\":\"string\"},","                                    \"i_anniv_days\": {\"type\":\"integer\"}, ","                                    \"s_location_code\": {\"type\":\"string\"},","                                    \"tenant_default_currency\": {\"type\":\"string\"},","                                    \"tenant_id\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"account_token\",","                                    \"corp_code\",","                                    \"s_location_code\",","                                    \"tenant_id\"","                                ]","                            }","                        },","                        \"required\": [","                            \"integration_id\"","                        ]","                    },","                    \"metadata\": {\"type\":\"object\"},","                    \"name\": {\"type\":\"string\"},","                    \"next_bill_update\": {\"type\":\"string\"},","                    \"updated_at\": {\"type\":\"string\"},","                    \"user_details\": {","                        \"type\":[\"array\",\"null\"],","                        \"items\": {","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details_type\": {\"type\":\"string\"},","                                \"values\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"additionalProperties\": false,","                                        \"type\": \"string\"","                                    }","                                }","                            },","                            \"required\": [","                                \"details_type\",","                                \"values\"","                            ]","                        }","                    },","                    \"user_id\": {\"type\":\"string\"},","                    \"user_type\": {\"type\": \"string\"}","                },","                \"required\": [","                    \"created_at\",","                    \"external_user_id\",","                    \"name\",","                    \"updated_at\",","                    \"user_details\",","                    \"user_id\",","                    \"user_type\",","                ]","            }","        },","        \"required\": [","            \"payment_methods\",","            \"sender\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"61402177-0e2b-44ea-99a7-3bd9f67ac2ea","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"url":"https://api.prod.finverse.net/payment_users/{{user_id2}}/payment_methods","description":"<p>Retrieve a list of Payment Methods for a user (using a specific <code>user_id</code>).</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<p><strong>Limitations: Payment Methods are only returned for payment methods that are stored. The following payment methods are not stored:</strong></p>\n<ol>\n<li><p>One-time payment methods (e.g. manual bank transfer via FPS/PayNow);</p>\n</li>\n<li><p>Some card payment methods authorized for only one-time use (depending on the external payment gateway).</p>\n<ol>\n<li>For these one-time card payments, some card details may be included directly in the Payments object (see <code>payments.payment_methods</code>), if available from the external payment gateway.</li>\n</ol>\n</li>\n</ol>\n<h2 id=\"response-fields\">Response fields</h2>\n<p>Details on the user's payment methods (Mandates, Cards) plus the user (sender), including the user's autopay consent status.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>payment_methods</td>\n<td>array of objects</td>\n<td>Array of Payment Method objects. See below.</td>\n</tr>\n<tr>\n<td>sender</td>\n<td>object</td>\n<td>Details on the sender of the payment. See below.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment_method-object\">payment_method (object)</h3>\n<p>Details on an individual payment method authorized by the end-used.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>card</td>\n<td>object, conditional</td>\n<td>Card object. See below.  <br />  <br />Included only if <code>payment_method_type</code> = <code>CARD</code>.</td>\n</tr>\n<tr>\n<td>mandate</td>\n<td>object, conditional</td>\n<td>Mandate object.  <br />  <br />Refer to Mandate object data model in <code>GET /mandates/{mandate_id}</code>.  <br />  <br />Included only if <code>payment_method_type</code> = <code>MANDATE</code>.</td>\n</tr>\n<tr>\n<td>payment_method_id</td>\n<td>string (ULID)</td>\n<td>Finverse unique ID for this payment method.  <br />  <br />If the <code>Sender</code> has <code>autopay_consent</code> = <code>true</code> , this ID can be used to trigger additional payments on-demand (see <code>POST /</code>payments).</td>\n</tr>\n<tr>\n<td>payment_method_type</td>\n<td>string ENUM</td>\n<td>Type of payment method.  <br />  <br /><strong>Possible values</strong>: <code>CARD</code>, <code>MANDATE</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"card-object-conditional\">card (object, conditional)</h3>\n<p>Details on the card authorized by the end-user.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>card_details</td>\n<td>object</td>\n<td>Additional details on the card. See below.</td>\n</tr>\n<tr>\n<td>created_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Time when the card object was first created</td>\n</tr>\n<tr>\n<td>recipient_account</td>\n<td>string (ULID)</td>\n<td>Finverse ID for the account receiving the card payment.</td>\n</tr>\n<tr>\n<td>status</td>\n<td>string ENUM</td>\n<td>Current status of the card. Possible values: PROCESSING, SUCCEEDED, CANCELLED, FAILED</td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last update to the card object</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"card_details-object\">card_details (object)</h3>\n<p>Additional details on the card.</p>\n<p><strong>Limitations</strong>:</p>\n<ul>\n<li>Card details may be missing in some cases (e.g. if an end-user pays with a card stored in Stripe Link, or with a wallet instead of a card).</li>\n</ul>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>brand</td>\n<td>string, optional</td>\n<td>Card brand.  <br />  <br />Common values: American Express, Diners Club, Discover, JCB, Mastercard, UnionPay, Visa.  <br />  <br />Note: other values may be returned (e.g. additional card brands supported by the card payment gateway).</td>\n</tr>\n<tr>\n<td>brand_product</td>\n<td>string, optional</td>\n<td>Card product / brand variant, as provided by the card payment gateway (e.g. visaCommercialPremium)</td>\n</tr>\n<tr>\n<td>card_number_alias</td>\n<td>string, optional</td>\n<td>Unique fingerprint for the card number, if provided by the card payment gateway.  <br />  <br />The card number alias can be used to check whether the card number is the same (for example across multiple users).  <br />  <br />Unlike the card <code>fingerprint</code>, the card number alias will change if the card is reissued with a new number (e.g. upon card expiry).  <br />  <br />See also: <code>fingerprint</code> field.</td>\n</tr>\n<tr>\n<td>collection_entity_name</td>\n<td>string</td>\n<td>Name of the legal entity directly collecting the payment. This name may be displayed to users in the Finverse UI and in email notifications and in the sender's card statements.  <br />  <br />For card payments, <code>collection_entity_name</code> is typically the merchant's legal entity name, configured by Finverse during customer onboarding. Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> to configure your merchant details.</td>\n</tr>\n<tr>\n<td>country</td>\n<td>string (2-letter ISO-3166-1 Alpha-2 code), optional</td>\n<td>Card country of issuance (e.g. \"SG\")</td>\n</tr>\n<tr>\n<td>expiry_month</td>\n<td>integer, optional</td>\n<td>Card expiry month (e.g. 3 = March)</td>\n</tr>\n<tr>\n<td>expiry_year</td>\n<td>integer, optional</td>\n<td>4-digit card expiry year (e.g. 2025)</td>\n</tr>\n<tr>\n<td>fingerprint</td>\n<td>string, optional</td>\n<td>Unique fingerprint for the card account, if provided by the card payment gateway.. The card fingerprint remains the same even when a card expires and a new card is issued with a new card number.  <br />  <br />The fingerprint can be used to check whether the card is the same (for example across multiple users).  <br />  <br />See also: <code>card_number_alias</code> field.</td>\n</tr>\n<tr>\n<td>finverse_authorization_reference</td>\n<td>string, optional</td>\n<td>Finverse-generated unique ID for the payment method authorization setup. This value may be generated and passed to 3rd party payment gateways when using the Finverse <code>payment_id</code> is not possible or desirable (e.g. when the reference is user-facing, making a more user-friendly reference preferable).</td>\n</tr>\n<tr>\n<td>funding</td>\n<td>string ENUM, optional</td>\n<td>Card funding type. Possible values: <code>CREDIT</code>, <code>DEBIT</code>, <code>PREPAID</code>, <code>UNKNOWN</code></td>\n</tr>\n<tr>\n<td>last4</td>\n<td>string, optional</td>\n<td>Last 4 digits of the card number</td>\n</tr>\n<tr>\n<td>processor_entity_name</td>\n<td>string, optional</td>\n<td>Name of the payment processor (if any) through which payments are collected. This name may be displayed to users in the Finverse UI, in email notifications and in the sender's bank/card statements.  <br />  <br />For payments directly collected by the merchant (e.g. SG eGIRO payments, most card payments), no <code>processor_entity_name</code> is returned.  <br />  <br />For payments collected through Finverse (e.g. HK eDDA payments), <code>processor_entity_name</code> will be Finverse's legal entity name.</td>\n</tr>\n<tr>\n<td>processor_details</td>\n<td>object, optional</td>\n<td>Additional details on how the payment method authorization was processed. See below.</td>\n</tr>\n<tr>\n<td>recurring_payment_mode</td>\n<td>string ENUM, optional</td>\n<td>Flag used to identify whether the payment method specifically has been setup for recurring payment use cases (for which some payment methods can be eligible for discounted pricing).  <br />  <br />Possible values: - <code>FIXED_SCHEDULE</code>: used for subscriptions (fixed schedule, fixed or variable amount)  <br />- <code>NON_RECURRING</code>: used for one-off, user-initiated payments (like an Uber ride or Amazon shopping order)  <br />- <code>VARIABLE_RECURRING</code>: used for variable schedule + amount recurring contracts (e.g. usage based contracts like Cloud / SaaS services, or property rentals with additional adhoc charges for value-added services)</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"processor_details-object-optional\">processor_details (object, optional)</h3>\n<p>Additional details on how the payment method authorization was processed.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>auth_code</td>\n<td>string, optional</td>\n<td>Authorization code returned by the payment gateway</td>\n</tr>\n<tr>\n<td>processor_id</td>\n<td>string ENUM,optional</td>\n<td>ID of the payment gateway which processed the payment method authorization.  <br />  <br />Possible values: - <code>ADYEN</code></td>\n</tr>\n<tr>\n<td>processor_reference</td>\n<td>string, optional</td>\n<td>Transaction reference returned by the payment gateway</td>\n</tr>\n<tr>\n<td>token_id</td>\n<td>string, optional</td>\n<td>Token ID returned by the payment gateway (for tokenized payment methods)</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"sender-object\">sender (object)</h3>\n<p>The sender object includes a Payment User object for the sender of the payment. Refer to the Payment User data model in <code>GET /payment_users/{payment_user_id}</code> for details on the Payment User object.</p>\n<p>Note: Some Payment User metadata fields are omitted for clarity (e.g. <code>created_at</code>, <code>metadata</code>, <code>updated_at</code>).</p>\n","urlObject":{"path":["payment_users","{{user_id2}}","payment_methods"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"32b0164d-b0dc-4b1e-b36e-4b26456a33b1","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payment_users/{{user_id}}/payment_methods"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1731658789"},{"key":"Date","value":"Fri, 15 Nov 2024 08:19:49 GMT"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"},{"key":"Transfer-Encoding","value":"chunked"}],"cookie":[],"responseTime":null,"body":"{\n    \"payment_methods\": [\n        {\n            \"card\": {\n                \"card_details\": {\n                    \"acquirer_authorization_reference\": \"R7RRPSMPR5P\",\n                    \"brand\": \"Visa\",\n                    \"brand_product_name\": \"visa\",\n                    \"card_number_alias\": \"F495225511395777\",\n                    \"collection_entity_name\": \"Demo Company Limited\",\n                    \"country\": \"NL\",\n                    \"expiry_month\": 3,\n                    \"expiry_year\": 2030,\n                    \"fingerprint\": \"5ePOmfH7G5irogopQi8b1XfF4G3CF\",\n                    \"finverse_authorization_reference\": \"FC260415XP40\",\n                    \"last4\": \"1111\",\n                    \"processor_details\": {\n                        \"auth_code\": \"070240\",\n                        \"processor_id\": \"ADYEN\",\n                        \"processor_reference\": \"PTQK3MZ7F9SRCTV5\",\n                        \"token_id\": \"WV947F3N9PJ3JWV5\"\n                    },\n                    \"recurring_payment_mode\": \"NON_RECURRING\"\n                },\n                \"created_at\": \"2026-04-15T07:39:00.921Z\",\n                \"recipient_account\": {\n                    \"account_id\": \"01K3NA2VWQCX4GKKTRH5RQRGQ2\",\n                    \"account_type\": \"SETTLEMENT_ACCOUNT\"\n                },\n                \"risk_data\": {\n                    \"processor_risk_data\": {\n                        \"browser_type\": \"Chrome\",\n                        \"device_type\": \"Other\",\n                        \"shopper_country\": \"HK\",\n                        \"shopper_ip\": \"121.202.204.206\",\n                        \"shopper_locale\": \"en-US\"\n                    }\n                },\n                \"status\": \"SUCCEEDED\",\n                \"updated_at\": \"2026-04-15T07:39:37.032Z\"\n            },\n            \"integration_metadata\": {\n                \"adyen_metadata\": {\n                    \"auth_code\": \"070240\",\n                    \"payment_method_id\": \"WV947F3N9PJ3JWV5\",\n                    \"psp_reference\": \"PTQK3MZ7F9SRCTV5\",\n                    \"recurring_processing_model\": \"UnscheduledCardOnFile\"\n                },\n                \"integration_id\": \"ADYEN\"\n            },\n            \"payment_method_id\": \"01KP818HDB4CVFQEXNCV7AMNH3\",\n            \"payment_method_type\": \"CARD\"\n        },\n        {\n            \"card\": {\n                \"card_details\": {\n                    \"brand\": \"Visa\",\n                    \"collection_entity_name\": \"Demo Company Limited\",\n                    \"expiry_month\": 1,\n                    \"expiry_year\": 2028,\n                    \"finverse_authorization_reference\": \"FC2506181FBA\",\n                    \"last4\": \"6666\",\n                    \"processor_details\": {\n                        \"auth_code\": \"073123\",\n                        \"processor_id\": \"adyen\",\n                        \"processor_reference\": \"NHMBR2TR38H7A123\",\n                        \"token_id\": \"D49T5QZSPLSAB123\"\n                    },\n                    \"recurring_payment_mode\": \"NON_RECURRING\"\n                },\n                \"created_at\": \"2024-11-15T08:04:00.942Z\",\n                \"status\": \"SUCCEEDED\",\n                \"updated_at\": \"2024-11-15T08:04:15.491Z\"\n            },\n            \"integration_metadata\": {\n                \"cybersource_metadata\": {\n                    \"payment_token\": \"26EFFDB01BF458F5E063AF598E0ACABA\"\n                },\n                \"integration_id\": \"CYBERSOURCE\"\n            },\n            \"payment_method_id\": \"01JCQDKE9DQYG366HMNDGHM85N\",\n            \"payment_method_type\": \"CARD\"\n        },\n        {\n            \"card\": {\n                \"card_details\": {\n                    \"brand\": \"Visa\",\n                    \"collection_entity_name\": \"Demo Company Limited\",\n                    \"expiry_month\": 5,\n                    \"expiry_year\": 2034,\n                    \"finverse_authorization_reference\": \"FC2506181AAA\",\n                    \"last4\": \"1111\",\n                    \"processor_details\": {\n                        \"auth_code\": \"073666\",\n                        \"processor_id\": \"adyen\",\n                        \"processor_reference\": \"NHMBR2TR38H7C678\",\n                        \"token_id\": \"D49T5QZSPLSAC999\"\n                    },\n                    \"recurring_payment_mode\": \"FIXED_SCHEDULE\"\n                },\n                \"created_at\": \"2024-11-15T08:02:59.409Z\",\n                \"status\": \"SUCCEEDED\",\n                \"updated_at\": \"2024-11-15T08:03:17.454Z\"\n            },\n            \"integration_metadata\": {\n                \"cybersource_metadata\": {\n                    \"payment_token\": \"26EFF54ECA88E9F9E063AF598E0AAB4C\"\n                },\n                \"integration_id\": \"CYBERSOURCE\"\n            },\n            \"payment_method_id\": \"01JCQDHJ6G9Y8NVEZ537NMSJ2M\",\n            \"payment_method_type\": \"CARD\"\n        },\n        {\n            \"card\": {\n                \"card_details\": {},\n                \"created_at\": \"2024-11-15T07:59:37.957Z\",\n                \"status\": \"FAILED\",\n                \"updated_at\": \"2024-11-15T08:00:05.563Z\"\n            },\n            \"payment_method_id\": \"01JCQDBDF41F4QHKMP54Y0P24B\",\n            \"payment_method_type\": \"CARD\"\n        },\n        {\n            \"mandate\": {\n                \"created_at\": \"2024-11-15T07:58:06.206Z\",\n                \"fees\": [],\n                \"mandate_details\": {\n                    \"collection_entity_name\": \"Finverse Technologies Limited\",\n                    \"currency\": \"HKD\",\n                    \"description\": \"Payment link mandate\",\n                    \"mandate_bank_reference\": \"FV TEAM-848E-FV T\",\n                    \"processor_entity_name\": \"Finverse Technologies Limited\",\n                    \"start_date\": \"2024-11-15\",\n                    \"transaction_limits\": {\n                        \"max_transaction_amount\": 500000,\n                        \"max_transaction_amount_set_by_payer_initial\": 5000\n                    }\n                },\n                \"mandate_id\": \"01JCQD84QBMXNVEVGZK5GVTBPH\",\n                \"payment_method_id\": \"01JCQD84WSZT7T95R27EH0F7D1\",\n                \"recipient\": {\n                    \"name\": \"Demo App\"\n                },\n                \"recipient_account\": {\n                    \"account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\",\n                    \"account_type\": \"SETTLEMENT_ACCOUNT\"\n                },\n                \"sender\": {\n                    \"external_user_id\": \"user_id_1||1731657447\",\n                    \"name\": \"John Doe\",\n                    \"user_details\": [],\n                    \"user_id\": \"01JCQD7DXHHW62Q1DW96HK1EAZ\",\n                    \"user_type\": \"INDIVIDUAL\"\n                },\n                \"sender_account\": {\n                    \"account_id\": \"01JCQD8GEC4YHZ4N5P0TDTGXD2\",\n                    \"account_number\": {\n                        \"number\": \"01JCQD8GNDY3MMPVX1NCBR1T4D\",\n                        \"type\": \"LOCAL\"\n                    },\n                    \"account_number_masked\": \"399XXXXX9393\",\n                    \"account_type\": \"EXTERNAL_ACCOUNT\",\n                    \"accountholder_name\": \"01JCQD8GMF51GXNWJE51BN4XDG\",\n                    \"institution_id\": \"testbank-dbs-hk\",\n                    \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                    \"user_id\": \"01JCQD7DXHHW62Q1DW96HK1EAZ\"\n                },\n                \"status\": \"SUCCEEDED\",\n                \"updated_at\": \"2024-11-15T07:58:04.659Z\"\n            },\n            \"payment_method_id\": \"01JCQD84WSZT7T95R27EH0F7D1\",\n            \"payment_method_type\": \"MANDATE\"\n        }\n    ],\n    \"sender\": {\n        \"autopay_consent\": false,\n        \"created_at\": \"2024-11-15T07:57:27.345Z\",\n        \"external_user_id\": \"user_id_1||1731657447\",\n        \"integration_metadata\": {\n            \"integration_id\": \"RAPIDSTOR\",\n            \"rapidstor_metadata\": {\n                \"account_token\": \"abcdef123456\",\n                \"corp_code\": \"{{corp_code}}\",\n                \"i_anniv_days\": 16,\n                \"s_location_code\": \"{{s_location_code}}\",\n                \"tenant_default_currency\": \"HKD\",\n                \"tenant_id\": \"{{tenant_id}}\"\n            }\n        },\n        \"name\": \"John Doe\",\n        \"updated_at\": \"2024-11-15T08:06:54.271Z\",\n        \"user_details\": [],\n        \"user_id\": \"01JCQD7DXHHW62Q1DW96HK1EAZ\",\n        \"user_type\": \"INDIVIDUAL\"\n    }\n}"}],"_postman_id":"61402177-0e2b-44ea-99a7-3bd9f67ac2ea"},{"name":"/payment_methods/{id} (Get Payment Method)","event":[{"listen":"test","script":{"id":"eec06309-86c8-423a-a975-57ffbf195551","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payment Methods or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"mandate\",","        \"card\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"card\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"card_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"acquirer_authorization_reference\": {\"type\":\"string\"},","                            \"brand\": {\"type\":\"string\"},","                            \"brand_product_name\": {\"type\":\"string\"},","                            \"card_number_alias\": {\"type\":\"string\"},","                            \"collection_entity_name\": {\"type\":\"string\"},","                            \"country\": {\"type\":\"string\"},","                            \"expiry_month\": {\"type\":\"integer\"},","                            \"expiry_year\": {\"type\":\"integer\"}, ","                            \"fingerprint\": {\"type\":\"string\"},","                            \"finverse_authorization_reference\": {\"type\":\"string\"},","                            \"funding\": {","                                \"type\":\"string\",","                                \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                            },","                            \"is_commercial\": {\"type\":\"boolean\"},","                            \"last4\": {\"type\":\"string\"},","                            \"processor_entity_name\": {\"type\":\"string\"},","                            \"processor_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"auth_code\": {\"type\":\"string\"},","                                    \"processor_id\": {\"type\":\"string\"},","                                    \"processor_reference\": {\"type\":\"string\"},","                                    \"token_id\": {\"type\":\"string\"},","                                },","                                \"required\": []","                            },","                            \"recurring_payment_mode\": {","                                \"type\":\"string\",","                                \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                            }","                        },","                        \"required\": []","                    },","                    \"created_at\": {\"type\":\"string\"},","                    \"recipient_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            }","                        },","                        \"required\": [\"account_id\", \"account_type\"]","                    },","                    \"risk_data\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"processor_risk_data\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"browser_type\": {\"type\":\"string\"},","                                    \"device_type\": {\"type\":\"string\"},","                                    \"shopper_country\": {\"type\":\"string\"},","                                    \"shopper_ip\": {\"type\":\"string\"},","                                    \"shopper_locale\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                        },","                        \"required\": []","                    },","                    \"status\": {","                        \"type\":\"string\",","                        \"enum\": [\"PROCESSING\", \"SUCCEEDED\", \"CANCELLED\"]","                    },","                    \"updated_at\": {\"type\":\"string\"},","                },","                \"required\" : [","                    \"created_at\",","                    \"status\",","                    \"updated_at\"","                ]","            },","            \"integration_metadata\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"adyen_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"auth_code\": {\"type\":\"string\"},","                            \"payment_method_id\": {\"type\":\"string\"},","                            \"psp_reference\": {\"type\":\"string\"}, ","                            \"recurring_processing_model\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"payment_method_id\",","                            \"recurring_processing_model\"","                        ]","                    },","                    \"cybersource_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"payment_token\": {\"type\":\"string\"}  ","                        },","                        \"required\": [","                            \"payment_token\"","                        ]","                    },","                    \"gocardless_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"funds_settlement\": {\"type\":\"string\"},","                            \"last_action\":  {\"type\":\"string\"},","                            \"mandate_id\": {\"type\":\"string\"},","                            \"next_possible_charge_date\": {\"type\":\"string\"}, ","                            \"payments_require_approval\": {\"type\":\"boolean\"},","                            \"reference\": {\"type\":\"string\"},","                            \"scheme\": {\"type\":\"string\"},","                            \"status\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"mandate_id\"","                        ]","                    },","                    \"integration_id\": {","                        \"type\":\"string\",","                        \"enum\": [\"ADYEN\", \"CYBERSOURCE\", \"GOCARDLESS\", \"STRIPE\"]","                    },","                    \"stripe_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"customer\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"id\": {\"type\":\"string\"}","                                },","                                \"required\": [\"id\"] ","                            },","                            \"payment_method\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"id\": {\"type\":\"string\"}","                                },","                                \"required\": [\"id\"] ","                            },","                        },","                        \"required\": [","                            \"customer\",","                            \"payment_method\"","                        ]","                    }","                },","                \"required\": [","                    \"integration_id\"","                ]","            },","            \"mandate\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"created_at\": {\"type\":\"string\"},  ","                    \"error\": {","                        \"type\": \"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"details\": {\"type\":\"string\"},","                            \"error_code\": {\"type\":\"string\"},","                            \"message\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                            }","                        },","                        \"required\" : [","                            \"error_code\",","                            \"message\",","                            \"type\"","                        ]","                    },","                    \"fees\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"amount\": {\"type\":\"integer\"},","                                \"currency\": {\"type\":\"string\"},","                                \"paid_by\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                },","                                \"paid_by_account_id\": {\"type\":\"string\"}","                            },","                            \"required\": [","                                \"amount\", ","                                \"currency\", ","                                \"paid_by\", ","                                \"paid_by_account_id\"","                            ]","                        }","                    },","                    \"mandate_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"collection_entity_name\": {\"type\":\"string\"},","                            \"currency\": {\"type\":\"string\"},","                            \"dda_reference\": {\"type\":\"string\"},","                            \"description\": {\"type\":\"string\"},","                            \"end_date\": {\"type\":\"string\"},","                            \"mandate_bank_reference\": {\"type\":\"string\"},","                            \"payment_schedule\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"amount\": {\"type\":\"integer\"},","                                    \"frequency\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"amount\",","                                    \"frequency\"","                                ]","                            },","                            \"processor_entity_name\": {\"type\":\"string\"},","                            \"start_date\": {\"type\":\"string\"},","                            \"transaction_limits\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"max_period_amount\": {\"type\":\"integer\"},","                                    \"max_period_count\": {\"type\":\"integer\"},","                                    \"max_transaction_amount\": {\"type\":\"integer\"},","                                    \"max_transaction_amount_set_by_payer_initial\": {\"type\":\"integer\"},","                                    \"period\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            }","                        },","                        \"required\": [","                            \"currency\",","                            \"description\"","                        ]","                    },","                    \"mandate_id\": {\"type\":\"string\"},","                    \"metadata\": {\"type\":\"object\"},","                    \"payment_method_id\": {\"type\":\"string\"},","                    \"recipient\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"name\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"name\"","                        ]","                    },","                    \"recipient_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            },","                            \"name\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"account_id\",","                            \"account_type\"","                        ]","                    },","                    \"sender\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"external_user_id\": {\"type\":\"string\"},","                            \"name\": {\"type\":\"string\"},","                            \"user_details\": {","                                \"type\":[\"array\",\"null\"],","                                \"items\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"details_type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                        },","                                        \"values\": {","                                            \"type\": \"array\",","                                            \"items\": {","                                                \"type\": \"string\"","                                            }","                                        }","                                    },","                                    \"required\": [","                                        \"details_type\",","                                        \"values\"","                                    ]","                                }","                            },","                            \"user_id\": {\"type\":\"string\"},","                            \"user_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                            }","                        },","                        \"required\": [","                            \"external_user_id\",","                            //\"name\", // TO BE ENFORCED","                            \"user_id\",","                            \"user_type\"","                        ]","                    },","                    \"sender_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_number\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"number\": {\"type\":\"string\"},","                                    \"type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"IBAN\", \"LOCAL\"]","                                    }","                                },","                                \"required\": [","                                    \"number\",","                                    \"type\"","                                ]","                            },","                            \"account_number_masked\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            },","                            \"accountholder_name\": {\"type\":\"string\"},","                            \"bank_code\": {\"type\":\"string\"},","                            \"institution_id\": {\"type\":\"string\"},","                            \"institution_name\": {\"type\":\"string\"},","                            \"user_id\": {\"type\":\"string\"},","                        },","                        \"required\": [","                            \"account_type\",","                            \"user_id\"","                        ]","                    },","                    \"status\": {","                        \"type\":\"string\",","                        \"enum\": [\"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"CLOSED\", \"FAILED\"]","                    },","                    \"updated_at\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"created_at\",","                    \"fees\",","                    \"mandate_details\",","                    \"mandate_id\",","                    \"payment_method_id\",","                    \"recipient\",","                    \"sender\",","                    \"status\",","                    \"updated_at\"","                ]","            },","            \"payment_method_id\": {\"type\": \"string\"},","            \"payment_method_type\": {","                \"type\": \"string\",","                \"enum\": [\"CARD\", \"MANDATE\"]","            }","        },","        \"if\": {","            \"properties\": {","                \"payment_method_type\": {\"const\": \"CARD\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"card\",","                \"payment_method_id\",","                \"payment_method_type\"","            ]","        },","        \"if\": {","            \"properties\": {","                \"payment_method_type\": {\"const\": \"MANDATE\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"mandate\",","                \"payment_method_id\",","                \"payment_method_type\"","            ]","        }","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"73188995-2544-4059-963a-7047b3594278","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/payment_methods/{{payment_method_id}}","description":"<p>Retrieve a single Payment Method (using a specific <code>payment_method_id</code>).</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<p><strong>Limitations: Payment Methods are only returned for payment methods that are stored. The following payment methods are not stored:</strong></p>\n<ol>\n<li><p>One-time payment methods (e.g. manual bank transfer via FPS/PayNow);</p>\n</li>\n<li><p>Some card payment methods authorized for only one-time use (depending on the external payment gateway).</p>\n<ol>\n<li>For these one-time card payments, some card details may be included directly in the Payments object (see <code>payments.payment_methods</code>), if available from the external payment gateway.</li>\n</ol>\n</li>\n</ol>\n<h2 id=\"response-fields\">Response fields</h2>\n<p>Single Payment Method object.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>card</td>\n<td>object, conditional</td>\n<td>Card object.  <br />  <br />Refer to Card object data model in <code>GET /users/{payment_user_id}/payment_methods</code>.  <br />  <br />Included only if <code>payment_method_type</code> = <code>CARD</code>.</td>\n</tr>\n<tr>\n<td>mandate</td>\n<td>object, conditional</td>\n<td>Mandate object.  <br />  <br />Refer to Mandate object data model in <code>GET /mandates/{mandate_id}</code>.  <br />  <br />Included only if <code>payment_method_type</code> = <code>MANDATE</code>.</td>\n</tr>\n<tr>\n<td>payment_method_id</td>\n<td>string (ULID)</td>\n<td>Finverse unique ID for this payment method.  <br />  <br />If the <code>Sender</code> has <code>autopay_consent</code> = <code>true</code> , this ID can be used to trigger additional payments on-demand (see <code>POST /</code>payments).</td>\n</tr>\n<tr>\n<td>payment_method_type</td>\n<td>string ENUM</td>\n<td>Type of payment method.  <br />  <br /><strong>Possible values</strong>: <code>CARD</code>, <code>MANDATE</code>.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["payment_methods","{{payment_method_id}}"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"62dcd3ce-a8f3-4b73-9283-07e77777c1c8","name":"Success (Card)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/payment_methods/{{payment_method_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":":status","value":200},{"key":"Content-Type","value":"application/json","description":"","type":"text"},{"key":"vary","value":"Origin"},{"key":"x-request-id","value":"1776238817"},{"key":"date","value":"Wed, 15 Apr 2026 07:40:17 GMT"},{"key":"content-length","value":"1211"},{"key":"via","value":"1.1 google"},{"key":"alt-svc","value":"h3=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"card\": {\n        \"card_details\": {\n            \"acquirer_authorization_reference\": \"R7RRPSMPR5P\",\n            \"brand\": \"Visa\",\n            \"brand_product_name\": \"visa\",\n            \"card_number_alias\": \"F495225511395777\",\n            \"collection_entity_name\": \"Demo Company Limited\",\n            \"country\": \"NL\",\n            \"expiry_month\": 3,\n            \"expiry_year\": 2030,\n            \"fingerprint\": \"5ePOmfH7G5irogopQi8b1XfF4G3CF\",\n            \"finverse_authorization_reference\": \"FC260415XP40\",\n            \"last4\": \"1111\",\n            \"processor_details\": {\n                \"auth_code\": \"070240\",\n                \"processor_id\": \"ADYEN\",\n                \"processor_reference\": \"PTQK3MZ7F9SRCTV5\",\n                \"token_id\": \"WV947F3N9PJ3JWV5\"\n            },\n            \"recurring_payment_mode\": \"NON_RECURRING\"\n        },\n        \"created_at\": \"2026-04-15T07:39:00.921Z\",\n        \"recipient_account\": {\n            \"account_id\": \"01K3NA2VWQCX4GKKTRH5RQRGQ2\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\"\n        },\n        \"risk_data\": {\n            \"processor_risk_data\": {\n                \"browser_type\": \"Chrome\",\n                \"device_type\": \"Other\",\n                \"shopper_country\": \"HK\",\n                \"shopper_ip\": \"121.202.204.206\",\n                \"shopper_locale\": \"en-US\"\n            }\n        },\n        \"status\": \"SUCCEEDED\",\n        \"updated_at\": \"2026-04-15T07:39:37.032Z\"\n    },\n    \"integration_metadata\": {\n        \"adyen_metadata\": {\n            \"auth_code\": \"070240\",\n            \"payment_method_id\": \"WV947F3N9PJ3JWV5\",\n            \"psp_reference\": \"PTQK3MZ7F9SRCTV5\",\n            \"recurring_processing_model\": \"UnscheduledCardOnFile\"\n        },\n        \"integration_id\": \"ADYEN\"\n    },\n    \"payment_method_id\": \"01KP818HDB4CVFQEXNCV7AMNH3\",\n    \"payment_method_type\": \"CARD\"\n}"},{"id":"82b1cdef-45fe-4950-b728-48fb05c8d3a4","name":"Success (Mandate)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/payment_methods/{{payment_method_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1731656923"},{"key":"Date","value":"Fri, 15 Nov 2024 07:48:43 GMT"},{"key":"Content-Length","value":"1445"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"mandate\": {\n        \"created_at\": \"2024-11-15T04:02:07.942Z\",\n        \"fees\": [\n            {\n                \"amount\": 0,\n                \"currency\": \"HKD\",\n                \"paid_by\": \"RECIPIENT\",\n                \"paid_by_account_id\": \"01H2Q59JNP045EJM4Q3MRSSC6R\"\n            }\n        ],\n        \"mandate_details\": {\n            \"collection_entity_name\": \"Finverse Technologies Limited\",\n            \"currency\": \"HKD\",\n            \"description\": \"Test Mandate\",\n            \"end_date\": \"2025-12-01\",\n            \"mandate_bank_reference\": \"FV TEAM-PCAD-FV T\",\n            \"processor_entity_name\": \"Finverse Technologies Limited\",\n            \"start_date\": \"2024-11-15\",\n            \"transaction_limits\": {\n                \"max_period_amount\": 10000,\n                \"max_period_count\": 10,\n                \"max_transaction_amount\": 10000,\n                \"max_transaction_amount_set_by_payer_initial\": 5000,\n                \"period\": \"MONTHLY\"\n            }\n        },\n        \"mandate_id\": \"01JCPZR5QHVTD0DD9K5SV1WVXC\",\n        \"metadata\": {\n            \"employer_name\": \"Apple Inc\",\n            \"key\": \"value\"\n        },\n        \"payment_method_id\": \"01JCPZR5VH2Q7R5QFMBDW4HAP5\",\n        \"recipient\": {\n            \"name\": \"Demo App\"\n        },\n        \"recipient_account\": {\n            \"account_id\": \"01H2Q59JNP045EJM4Q3MRSSC6R\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\"\n        },\n        \"sender\": {\n            \"external_user_id\": \"user_id_1\",\n            \"name\": \"John Doe\",\n            \"user_details\": [\n                {\n                    \"details_type\": \"HK_ID\",\n                    \"values\": [\n                        \"01JCPZR5V3K13M3D0WNGA8QGS2\"\n                    ]\n                }\n            ],\n            \"user_id\": \"01GWKTK0380NBRCV1B8D6N0SEH\",\n            \"user_type\": \"INDIVIDUAL\"\n        },\n        \"sender_account\": {\n            \"account_id\": \"01JCPZRDRQRB40DVQG7R6K7PYK\",\n            \"account_number\": {\n                \"number\": \"01JCPZRDXWXY55B1VS9T7S2MEH\",\n                \"type\": \"LOCAL\"\n            },\n            \"account_number_masked\": \"XXX45\",\n            \"account_type\": \"EXTERNAL_ACCOUNT\",\n            \"accountholder_name\": \"01JCPZRDXC17VZEQNEZHSQQYJT\",\n            \"institution_id\": \"testbank-dbs-uat\",\n            \"institution_name\": \"Testbank UAT (HK) Payments\",\n            \"user_id\": \"01GWKTK0380NBRCV1B8D6N0SEH\"\n        },\n        \"status\": \"SUCCEEDED\",\n        \"updated_at\": \"2024-11-15T04:02:06.952Z\"\n    },\n    \"payment_method_id\": \"01JCPZR5VH2Q7R5QFMBDW4HAP5\",\n    \"payment_method_type\": \"MANDATE\"\n}"}],"_postman_id":"73188995-2544-4059-963a-7047b3594278"}],"id":"ad4b9a71-06c5-4427-8143-712031277ea5","_postman_id":"ad4b9a71-06c5-4427-8143-712031277ea5","description":""},{"name":"02 - Cancel Payment Methods","item":[{"name":"/payment_methods/{id}/cancel (Cancel Payment Method)","event":[{"listen":"test","script":{"id":"7670c6c5-b256-4a0c-8268-9bfdd2134668","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payment Methods or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"mandate\",","        \"card\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"card\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"card_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"acquirer_authorization_reference\": {\"type\":\"string\"},","                            \"brand\": {\"type\":\"string\"},","                            \"brand_product_name\": {\"type\":\"string\"},","                            \"card_number_alias\": {\"type\":\"string\"},","                            \"collection_entity_name\": {\"type\":\"string\"},","                            \"country\": {\"type\":\"string\"},","                            \"expiry_month\": {\"type\":\"integer\"},","                            \"expiry_year\": {\"type\":\"integer\"}, ","                            \"fingerprint\": {\"type\":\"string\"},","                            \"finverse_authorization_reference\": {\"type\":\"string\"},","                            \"funding\": {","                                \"type\":\"string\",","                                \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                            },","                            \"is_commercial\": {\"type\":\"boolean\"},","                            \"last4\": {\"type\":\"string\"},","                            \"processor_entity_name\": {\"type\":\"string\"},","                            \"processor_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"auth_code\": {\"type\":\"string\"},","                                    \"processor_id\": {\"type\":\"string\"},","                                    \"processor_reference\": {\"type\":\"string\"},","                                    \"token_id\": {\"type\":\"string\"},","                                },","                                \"required\": []","                            },","                            \"recurring_payment_mode\": {","                                \"type\":\"string\",","                                \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                            }","                        },","                        \"required\": []","                    },","                    \"created_at\": {\"type\":\"string\"},","                    \"recipient_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            }","                        },","                        \"required\": [\"account_id\", \"account_type\"]","                    },","                    \"risk_data\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"processor_risk_data\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"browser_type\": {\"type\":\"string\"},","                                    \"device_type\": {\"type\":\"string\"},","                                    \"shopper_country\": {\"type\":\"string\"},","                                    \"shopper_ip\": {\"type\":\"string\"},","                                    \"shopper_locale\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                        },","                        \"required\": []","                    },","                    \"status\": {","                        \"type\":\"string\",","                        \"enum\": [\"PROCESSING\", \"SUCCEEDED\", \"CANCELLED\"]","                    },","                    \"updated_at\": {\"type\":\"string\"},","                },","                \"required\" : [","                    \"created_at\",","                    \"status\",","                    \"updated_at\"","                ]","            },","            \"integration_metadata\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"adyen_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"auth_code\": {\"type\":\"string\"},","                            \"payment_method_id\": {\"type\":\"string\"},","                            \"psp_reference\": {\"type\":\"string\"}, ","                            \"recurring_processing_model\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"payment_method_id\",","                            \"recurring_processing_model\"","                        ]","                    },","                    \"cybersource_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"payment_token\": {\"type\":\"string\"}  ","                        },","                        \"required\": [","                            \"payment_token\"","                        ]","                    },","                    \"gocardless_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"funds_settlement\": {\"type\":\"string\"},","                            \"last_action\":  {\"type\":\"string\"},","                            \"mandate_id\": {\"type\":\"string\"},","                            \"next_possible_charge_date\": {\"type\":\"string\"}, ","                            \"payments_require_approval\": {\"type\":\"boolean\"},","                            \"reference\": {\"type\":\"string\"},","                            \"scheme\": {\"type\":\"string\"},","                            \"status\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"mandate_id\"","                        ]","                    },","                    \"integration_id\": {","                        \"type\":\"string\",","                        \"enum\": [\"ADYEN\", \"CYBERSOURCE\", \"GOCARDLESS\", \"STRIPE\"]","                    },","                    \"stripe_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"customer\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"id\": {\"type\":\"string\"}","                                },","                                \"required\": [\"id\"] ","                            },","                            \"payment_method\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"id\": {\"type\":\"string\"}","                                },","                                \"required\": [\"id\"] ","                            },","                        },","                        \"required\": [","                            \"customer\",","                            \"payment_method\"","                        ]","                    }","                },","                \"required\": [","                    \"integration_id\"","                ]","            },","            \"mandate\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"created_at\": {\"type\":\"string\"},  ","                    \"error\": {","                        \"type\": \"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"details\": {\"type\":\"string\"},","                            \"error_code\": {\"type\":\"string\"},","                            \"message\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                            }","                        },","                        \"required\" : [","                            \"error_code\",","                            \"message\",","                            \"type\"","                        ]","                    },","                    \"fees\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"amount\": {\"type\":\"integer\"},","                                \"currency\": {\"type\":\"string\"},","                                \"paid_by\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                },","                                \"paid_by_account_id\": {\"type\":\"string\"}","                            },","                            \"required\": [","                                \"amount\", ","                                \"currency\", ","                                \"paid_by\", ","                                \"paid_by_account_id\"","                            ]","                        }","                    },","                    \"mandate_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"collection_entity_name\": {\"type\":\"string\"},","                            \"currency\": {\"type\":\"string\"},","                            \"dda_reference\": {\"type\":\"string\"},","                            \"description\": {\"type\":\"string\"},","                            \"end_date\": {\"type\":\"string\"},","                            \"mandate_bank_reference\": {\"type\":\"string\"},","                            \"payment_schedule\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"amount\": {\"type\":\"integer\"},","                                    \"frequency\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"amount\",","                                    \"frequency\"","                                ]","                            },","                            \"processor_entity_name\": {\"type\":\"string\"},","                            \"start_date\": {\"type\":\"string\"},","                            \"transaction_limits\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"max_period_amount\": {\"type\":\"integer\"},","                                    \"max_period_count\": {\"type\":\"integer\"},","                                    \"max_transaction_amount\": {\"type\":\"integer\"},","                                    \"max_transaction_amount_set_by_payer_initial\": {\"type\":\"integer\"},","                                    \"period\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            }","                        },","                        \"required\": [","                            \"currency\",","                            \"description\"","                        ]","                    },","                    \"mandate_id\": {\"type\":\"string\"},","                    \"metadata\": {\"type\":\"object\"},","                    \"payment_method_id\": {\"type\":\"string\"},","                    \"recipient\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"name\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"name\"","                        ]","                    },","                    \"recipient_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            },","                            \"name\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"account_id\",","                            \"account_type\"","                        ]","                    },","                    \"sender\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"external_user_id\": {\"type\":\"string\"},","                            \"name\": {\"type\":\"string\"},","                            \"user_details\": {","                                \"type\":[\"array\",\"null\"],","                                \"items\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"details_type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                        },","                                        \"values\": {","                                            \"type\": \"array\",","                                            \"items\": {","                                                \"type\": \"string\"","                                            }","                                        }","                                    },","                                    \"required\": [","                                        \"details_type\",","                                        \"values\"","                                    ]","                                }","                            },","                            \"user_id\": {\"type\":\"string\"},","                            \"user_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                            }","                        },","                        \"required\": [","                            \"external_user_id\",","                            //\"name\", // TO BE ENFORCED","                            \"user_id\",","                            \"user_type\"","                        ]","                    },","                    \"sender_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_number\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"number\": {\"type\":\"string\"},","                                    \"type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"IBAN\", \"LOCAL\"]","                                    }","                                },","                                \"required\": [","                                    \"number\",","                                    \"type\"","                                ]","                            },","                            \"account_number_masked\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            },","                            \"accountholder_name\": {\"type\":\"string\"},","                            \"bank_code\": {\"type\":\"string\"},","                            \"institution_id\": {\"type\":\"string\"},","                            \"institution_name\": {\"type\":\"string\"},","                            \"user_id\": {\"type\":\"string\"},","                        },","                        \"required\": [","                            \"account_type\",","                            \"user_id\"","                        ]","                    },","                    \"status\": {","                        \"type\":\"string\",","                        \"enum\": [\"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"CLOSED\", \"FAILED\"]","                    },","                    \"updated_at\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"created_at\",","                    \"fees\",","                    \"mandate_details\",","                    \"mandate_id\",","                    \"payment_method_id\",","                    \"recipient\",","                    \"sender\",","                    \"status\",","                    \"updated_at\"","                ]","            },","            \"payment_method_id\": {\"type\": \"string\"},","            \"payment_method_type\": {","                \"type\": \"string\",","                \"enum\": [\"CARD\", \"MANDATE\"]","            }","        },","        \"if\": {","            \"properties\": {","                \"payment_method_type\": {\"const\": \"CARD\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"card\",","                \"payment_method_id\",","                \"payment_method_type\"","            ]","        },","        \"if\": {","            \"properties\": {","                \"payment_method_type\": {\"const\": \"MANDATE\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"mandate\",","                \"payment_method_id\",","                \"payment_method_type\"","            ]","        }","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}},{"listen":"prerequest","script":{"id":"214d80dd-0193-407e-9a01-0317013f97c3","exec":[""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"189f5162-386f-4015-b9ae-60d4c216a6b6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"url":"https://api.prod.finverse.net/payment_methods/{{payment_method_id}}/cancel","description":"<p>Cancel a Payment Method (using a specific <code>payment_method_id</code>). This sets the Payment Method <code>status</code> to <code>CANCELLED</code> and Finverse will no longer process any payments for the Payment Method.</p>\n<p>Cancellation is optional.</p>\n<p>Cancellation will fail if the Payment Method is non-cancellable (e.g. because it is still being processed), or if the Payment Method has a processing Payment.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"response-fields\">Response fields</h2>\n<p>The response is a Payment Method object, or an error object if the Payment Method is not cancellable (e.g. payment is already processing).</p>\n<p>Refer to Payment Method object data model in <code>GET /payment_users/{{user_id}}/payment_methods</code></p>\n","urlObject":{"path":["payment_methods","{{payment_method_id}}","cancel"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"896987b6-cabd-4257-9f6d-4a45993cf8cc","name":"Success (Card)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payment_methods/{{payment_method_id}}/cancel"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":":status","value":200},{"key":"Content-Type","value":"application/json","description":"","type":"text"},{"key":"vary","value":"Origin"},{"key":"x-request-id","value":"1776239210"},{"key":"date","value":"Wed, 15 Apr 2026 07:46:49 GMT"},{"key":"content-length","value":"1211"},{"key":"via","value":"1.1 google"},{"key":"alt-svc","value":"h3=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"card\": {\n        \"card_details\": {\n            \"acquirer_authorization_reference\": \"R7RRPSMPR5P\",\n            \"brand\": \"Visa\",\n            \"brand_product_name\": \"visa\",\n            \"card_number_alias\": \"F495225511395777\",\n            \"collection_entity_name\": \"LE32CLG223226Q5N3BCX45QNS\",\n            \"country\": \"NL\",\n            \"expiry_month\": 3,\n            \"expiry_year\": 2030,\n            \"fingerprint\": \"5ePOmfH7G5irogopQi8b1XfF4G3CF\",\n            \"finverse_authorization_reference\": \"FC260415XP40\",\n            \"last4\": \"1111\",\n            \"processor_details\": {\n                \"auth_code\": \"070240\",\n                \"processor_id\": \"ADYEN\",\n                \"processor_reference\": \"PTQK3MZ7F9SRCTV5\",\n                \"token_id\": \"WV947F3N9PJ3JWV5\"\n            },\n            \"recurring_payment_mode\": \"NON_RECURRING\"\n        },\n        \"created_at\": \"2026-04-15T07:39:00.921Z\",\n        \"recipient_account\": {\n            \"account_id\": \"01K3NA2VWQCX4GKKTRH5RQRGQ2\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\"\n        },\n        \"risk_data\": {\n            \"processor_risk_data\": {\n                \"browser_type\": \"Chrome\",\n                \"device_type\": \"Other\",\n                \"shopper_country\": \"HK\",\n                \"shopper_ip\": \"121.202.204.206\",\n                \"shopper_locale\": \"en-US\"\n            }\n        },\n        \"status\": \"CANCELLED\",\n        \"updated_at\": \"2026-04-15T07:44:42.648Z\"\n    },\n    \"integration_metadata\": {\n        \"adyen_metadata\": {\n            \"auth_code\": \"070240\",\n            \"payment_method_id\": \"WV947F3N9PJ3JWV5\",\n            \"psp_reference\": \"PTQK3MZ7F9SRCTV5\",\n            \"recurring_processing_model\": \"UnscheduledCardOnFile\"\n        },\n        \"integration_id\": \"ADYEN\"\n    },\n    \"payment_method_id\": \"01KP818HDB4CVFQEXNCV7AMNH3\",\n    \"payment_method_type\": \"CARD\"\n}"},{"id":"618a5415-7422-416c-beab-46c403339be8","name":"Success (Mandate)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payment_methods/{{payment_method_id}}/cancel"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":":status","value":200},{"key":"content-type","value":"application/json"},{"key":"vary","value":"Origin"},{"key":"x-request-id","value":"1776831181"},{"key":"date","value":"Wed, 22 Apr 2026 04:13:01 GMT"},{"key":"content-length","value":"927"},{"key":"via","value":"1.1 google"},{"key":"alt-svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"mandate\": {\n        \"created_at\": \"2026-04-22T04:13:01.185Z\",\n        \"fees\": [],\n        \"mandate_details\": {\n            \"currency\": \"HKD\",\n            \"description\": \"Test Mandate\",\n            \"end_date\": \"2025-12-01\",\n            \"start_date\": \"2025-02-21\",\n            \"transaction_limits\": {\n                \"max_period_amount\": 10000,\n                \"max_period_count\": 10,\n                \"max_transaction_amount\": 10000,\n                \"period\": \"MONTHLY\"\n            }\n        },\n        \"mandate_id\": \"01JMK6PJ6PECN3Z1N5VXSSB5FD\",\n        \"metadata\": {\n            \"employer_name\": \"Apple Inc\",\n            \"key\": \"value\"\n        },\n        \"payment_method_id\": \"01JMK6PJ9DH8F0AVH6RPACXJ9X\",\n        \"recipient\": {\n            \"name\": \"Demo App\"\n        },\n        \"recipient_account\": {\n            \"account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\"\n        },\n        \"sender\": {\n            \"external_user_id\": \"user_id_1\",\n            \"name\": \"John Doe\",\n            \"user_details\": [\n                {\n                    \"details_type\": \"HK_ID\",\n                    \"values\": [\n                        \"01JJJADS8A8M9PH8RT3S9AAT3A\"\n                    ]\n                }\n            ],\n            \"user_id\": \"01GWKTK0380NBRCV1B8D6N0SEH\",\n            \"user_type\": \"INDIVIDUAL\"\n        },\n        \"status\": \"CANCELLED\",\n        \"updated_at\": \"2026-04-22T04:13:01.185Z\"\n    },\n    \"payment_method_id\": \"01JMK6PJ9DH8F0AVH6RPACXJ9X\",\n    \"payment_method_type\": \"MANDATE\"\n}"},{"id":"a79ccf2b-e393-4db5-8cc6-dabf21a1e923","name":"Error (Not cancellable)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payment_methods/{{payment_method_id}}/cancel"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":":status","value":400},{"key":"Content-Type","value":"application/json","description":"","type":"text"},{"key":"vary","value":"Origin"},{"key":"x-request-id","value":"1776831522"},{"key":"date","value":"Wed, 22 Apr 2026 04:18:42 GMT"},{"key":"content-length","value":"222"},{"key":"via","value":"1.1 google"},{"key":"alt-svc","value":"h3=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"Payment method is not cancellable (payment method status is PROCESSING or SUBMITTED)\",\n        \"error_code\": \"NOT_CANCELLABLE\",\n        \"message\": \"Cancellation not allowed\",\n        \"request_id\": \"1776831522\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"189f5162-386f-4015-b9ae-60d4c216a6b6"}],"id":"f5f29349-0567-4fcf-b00f-ee1201a201c1","_postman_id":"f5f29349-0567-4fcf-b00f-ee1201a201c1","description":""},{"name":"03 - Create Payment Methods (Advanced flow)","item":[{"name":"/payment_methods (Create Payment Method: direct debit mandate)","event":[{"listen":"test","script":{"id":"7670c6c5-b256-4a0c-8268-9bfdd2134668","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if(jsonData.payment_method_id) {","    pm.environment.set(\"payment_method_id\", jsonData.payment_method_id)","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payment Methods or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"card\",","        \"mandate\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"card\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"card_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"acquirer_authorization_reference\": {\"type\":\"string\"},","                            \"brand\": {\"type\":\"string\"},","                            \"brand_product_name\": {\"type\":\"string\"},","                            \"card_number_alias\": {\"type\":\"string\"},","                            \"collection_entity_name\": {\"type\":\"string\"},","                            \"country\": {\"type\":\"string\"},","                            \"expiry_month\": {\"type\":\"integer\"},","                            \"expiry_year\": {\"type\":\"integer\"}, ","                            \"fingerprint\": {\"type\":\"string\"},","                            \"finverse_authorization_reference\": {\"type\":\"string\"},","                            \"funding\": {","                                \"type\":\"string\",","                                \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                            },","                            \"is_commercial\": {\"type\":\"boolean\"},","                            \"last4\": {\"type\":\"string\"},","                            \"processor_entity_name\": {\"type\":\"string\"},","                            \"processor_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"auth_code\": {\"type\":\"string\"},","                                    \"processor_id\": {\"type\":\"string\"},","                                    \"processor_reference\": {\"type\":\"string\"},","                                    \"token_id\": {\"type\":\"string\"},","                                },","                                \"required\": []","                            },","                            \"recurring_payment_mode\": {","                                \"type\":\"string\",","                                \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                            }","                        },","                        \"required\": []","                    },","                    \"created_at\": {\"type\":\"string\"},","                    \"recipient_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            }","                        },","                        \"required\": [\"account_id\", \"account_type\"]","                    },","                    \"risk_data\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"processor_risk_data\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"browser_type\": {\"type\":\"string\"},","                                    \"device_type\": {\"type\":\"string\"},","                                    \"shopper_country\": {\"type\":\"string\"},","                                    \"shopper_ip\": {\"type\":\"string\"},","                                    \"shopper_locale\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                        },","                        \"required\": []","                    },","                    \"status\": {","                        \"type\":\"string\",","                        \"enum\": [\"PROCESSING\", \"SUCCEEDED\", \"CANCELLED\"]","                    },","                    \"updated_at\": {\"type\":\"string\"},","                },","                \"required\" : [","                    \"created_at\",","                    \"status\",","                    \"updated_at\"","                ]","            },","            \"integration_metadata\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"adyen_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"auth_code\": {\"type\":\"string\"},","                            \"payment_method_id\": {\"type\":\"string\"},","                            \"psp_reference\": {\"type\":\"string\"}, ","                            \"recurring_processing_model\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"payment_method_id\",","                            \"recurring_processing_model\"","                        ]","                    },","                    \"cybersource_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"payment_token\": {\"type\":\"string\"}  ","                        },","                        \"required\": [","                            \"payment_token\"","                        ]","                    },","                    \"gocardless_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"funds_settlement\": {\"type\":\"string\"},","                            \"last_action\":  {\"type\":\"string\"},","                            \"mandate_id\": {\"type\":\"string\"},","                            \"next_possible_charge_date\": {\"type\":\"string\"}, ","                            \"payments_require_approval\": {\"type\":\"boolean\"},","                            \"reference\": {\"type\":\"string\"},","                            \"scheme\": {\"type\":\"string\"},","                            \"status\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"mandate_id\"","                        ]","                    },","                    \"integration_id\": {","                        \"type\":\"string\",","                        \"enum\": [\"ADYEN\", \"CYBERSOURCE\", \"GOCARDLESS\", \"STRIPE\"]","                    },","                    \"stripe_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"customer\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"id\": {\"type\":\"string\"}","                                },","                                \"required\": [\"id\"] ","                            },","                            \"payment_method\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"id\": {\"type\":\"string\"}","                                },","                                \"required\": [\"id\"] ","                            },","                        },","                        \"required\": [","                            \"customer\",","                            \"payment_method\"","                        ]","                    }","                },","                \"required\": [","                    \"integration_id\"","                ]","            },","            \"mandate\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"created_at\": {\"type\":\"string\"},  ","                    \"error\": {","                        \"type\": \"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"details\": {\"type\":\"string\"},","                            \"error_code\": {\"type\":\"string\"},","                            \"message\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                            }","                        },","                        \"required\" : [","                            \"error_code\",","                            \"message\",","                            \"type\"","                        ]","                    },","                    \"fees\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"amount\": {\"type\":\"integer\"},","                                \"currency\": {\"type\":\"string\"},","                                \"paid_by\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                },","                                \"paid_by_account_id\": {\"type\":\"string\"}","                            },","                            \"required\": [","                                \"amount\", ","                                \"currency\", ","                                \"paid_by\", ","                                \"paid_by_account_id\"","                            ]","                        }","                    },","                    \"mandate_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"collection_entity_name\": {\"type\":\"string\"},","                            \"currency\": {\"type\":\"string\"},","                            \"dda_reference\": {\"type\":\"string\"},","                            \"description\": {\"type\":\"string\"},","                            \"end_date\": {\"type\":\"string\"},","                            \"mandate_bank_reference\": {\"type\":\"string\"},","                            \"payment_schedule\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"amount\": {\"type\":\"integer\"},","                                    \"frequency\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"amount\",","                                    \"frequency\"","                                ]","                            },","                            \"processor_entity_name\": {\"type\":\"string\"},","                            \"start_date\": {\"type\":\"string\"},","                            \"transaction_limits\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"max_period_amount\": {\"type\":\"integer\"},","                                    \"max_period_count\": {\"type\":\"integer\"},","                                    \"max_transaction_amount\": {\"type\":\"integer\"},","                                    \"max_transaction_amount_set_by_payer_initial\": {\"type\":\"integer\"},","                                    \"period\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            }","                        },","                        \"required\": [","                            \"currency\",","                            \"description\"","                        ]","                    },","                    \"mandate_id\": {\"type\":\"string\"},","                    \"metadata\": {\"type\":\"object\"},","                    \"payment_method_id\": {\"type\":\"string\"},","                    \"recipient\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"name\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"name\"","                        ]","                    },","                    \"recipient_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            },","                            \"name\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"account_id\",","                            \"account_type\"","                        ]","                    },","                    \"sender\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"external_user_id\": {\"type\":\"string\"},","                            \"name\": {\"type\":\"string\"},","                            \"user_details\": {","                                \"type\":[\"array\",\"null\"],","                                \"items\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"details_type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                        },","                                        \"values\": {","                                            \"type\": \"array\",","                                            \"items\": {","                                                \"type\": \"string\"","                                            }","                                        }","                                    },","                                    \"required\": [","                                        \"details_type\",","                                        \"values\"","                                    ]","                                }","                            },","                            \"user_id\": {\"type\":\"string\"},","                            \"user_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                            }","                        },","                        \"required\": [","                            \"external_user_id\",","                            //\"name\", // TO BE ENFORCED","                            \"user_id\",","                            \"user_type\"","                        ]","                    },","                    \"sender_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_number\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"number\": {\"type\":\"string\"},","                                    \"type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"IBAN\", \"LOCAL\"]","                                    }","                                },","                                \"required\": [","                                    \"number\",","                                    \"type\"","                                ]","                            },","                            \"account_number_masked\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            },","                            \"accountholder_name\": {\"type\":\"string\"},","                            \"bank_code\": {\"type\":\"string\"},","                            \"institution_id\": {\"type\":\"string\"},","                            \"institution_name\": {\"type\":\"string\"},","                            \"user_id\": {\"type\":\"string\"},","                        },","                        \"required\": [","                            \"account_type\",","                            \"user_id\"","                        ]","                    },","                    \"status\": {","                        \"type\":\"string\",","                        \"enum\": [\"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"CLOSED\", \"FAILED\"]","                    },","                    \"updated_at\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"created_at\",","                    \"fees\",","                    \"mandate_details\",","                    \"mandate_id\",","                    \"payment_method_id\",","                    \"recipient\",","                    \"sender\",","                    \"status\",","                    \"updated_at\"","                ]","            },","            \"payment_method_id\": {\"type\": \"string\"},","            \"payment_method_type\": {","                \"type\": \"string\",","                \"enum\": [\"CARD\", \"MANDATE\"]","            }","        },","        \"if\": {","            \"properties\": {","                \"payment_method_type\": {\"const\": \"CARD\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"card\",","                \"payment_method_id\",","                \"payment_method_type\"","            ]","        },","        \"if\": {","            \"properties\": {","                \"payment_method_type\": {\"const\": \"MANDATE\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"mandate\",","                \"payment_method_id\",","                \"payment_method_type\"","            ]","        }","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"fd191ca4-f7c2-4e98-8b44-633a5effb395","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"body":{"mode":"raw","raw":"{\n\t\"mandate\": {\n\t\t\"mandate_details\": {\n\t\t\t\"dda_reference\": \"{{dda_reference}}\",\n\t\t\t\"currency\": \"SGD\",\n\t\t\t\"description\": \"Paper eGIRO Mandate\",\n\t\t\t\"transaction_limits\": {\n                \"max_period_amount\": 100000000,\n                \"max_period_count\": 100000,\n                \"max_transaction_amount\": 100000000,\n                \"period\": \"MONTHLY\"\n            }\n\t\t},\n\t\t\"metadata\": {\n\t\t\t\"key\": \"value\"\n\t\t},\n\t\t\"recipient_account\": {\n\t\t    \"account_id\": \"contact_finverse_support\"\n\t\t},\n\t\t\"sender_account\": {\n\t\t\t\"account_id\": \"{{existing_sender_account_id2}}\"\n\t\t},\n\t\t\"status\": \"SUCCEEDED\"\n\t},\n\t\"payment_method_type\": \"MANDATE\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_users/{{user_id}}/payment_methods","description":"<p><em>Note: this endpoint is primarily intended for migrating payment methods from other payment gateways into Finverse.</em></p>\n<p>Manually register a Payment Method, referencing a valid card or direct debit mandate (already setup on a 3rd party payment gateway).</p>\n<p>The fields required depend on whether the payment method to be registered is a card or direct debit mandate.</p>\n<p>This request example creates a <strong>direct debit mandate</strong>. See the next requests for examples of creating a <strong>card payment method.</strong></p>\n<p><strong>Access:</strong> This flow is available on demand for Finverse customers who want to directly create or migrate Payment Methods. Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> to request access.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"request-fields\">Request fields</h2>\n<p>Pass details of the card or mandate to be created.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>card</td>\n<td>object, conditionally required</td>\n<td>Card object. See below.  <br />  <br />Required if payment_method_type = <code>CARD</code>.</td>\n</tr>\n<tr>\n<td>mandate</td>\n<td>object, conditionally required</td>\n<td>Mandate object. See below.  <br />  <br />Reqiored if payment_method_type = <code>MANDATE</code>.</td>\n</tr>\n<tr>\n<td>payment_method_type</td>\n<td>string ENUM, required</td>\n<td>Type of payment method.  <br />  <br /><strong>Possible values</strong>: <code>CARD</code>, <code>MANDATE</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"card-object-conditionally-required\">card (object, conditionally required)</h3>\n<p>Details on the card authorized by the end-user.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>card_details</td>\n<td>object</td>\n<td>Additional details on the card</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"mandate-object-conditionally-required\">mandate (object, conditionally required)</h3>\n<p>Details on the direct debit mandate authorized by the end-user.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>mandate_details</td>\n<td>object, required</td>\n<td>Details on the mandate. See below.</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format. E.g. employer_name: Apple Inc</td>\n</tr>\n<tr>\n<td>recipient_account</td>\n<td>object, required</td>\n<td>Details on the recipient account of the payment (i.e. the Customer App's receiving account).</td>\n</tr>\n<tr>\n<td>sender_account</td>\n<td>object, required</td>\n<td>Details on the sender account of the payment (i.e. the payer's originating account). See below.</td>\n</tr>\n<tr>\n<td>status</td>\n<td>string ENUM, required</td>\n<td>Current status of the mandate.  <br />  <br />Accepted values: SUCCEEDED.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"mandate_details-object-required\">mandate_details (object, required)</h3>\n<p>Details describing the Mandate.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code), required</td>\n<td>Currency of the mandate (e.g. HKD)</td>\n</tr>\n<tr>\n<td>dda_reference</td>\n<td>string, required</td>\n<td>Direct debit authorization reference / token uniquely identifying the mandate authorized by the sender.</td>\n</tr>\n<tr>\n<td>description</td>\n<td>string, required</td>\n<td>User-facing description for the mandate</td>\n</tr>\n<tr>\n<td>end_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>Expiration date of the mandate, e.g. <code>2022-12-31</code>. Payment requests will be allowed up to this date (inclusive). All date inputs assume UTC times (e.g. if <code>end_date</code> = <code>2022-12-31</code>, then a payment will be allowed until 2022-12-31 at 23:59:59 UTC). <code>end_date</code> must be equal to or greater than <code>start_date</code> (in UTC).</td>\n</tr>\n<tr>\n<td>payment_schedule</td>\n<td>object, optional</td>\n<td>RESERVED FOR FUTURE USE - Specifies scheduled auto-payments. See below.</td>\n</tr>\n<tr>\n<td>start_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>Start date of the mandate, e.g. <code>2022-06-01</code>. Payment requests will be allowed from this date onwards (inclusive). All date inputs assume UTC times (e.g. if <code>start_date</code> = <code>2022-06-01</code>, then a payment will be allowed starting from 2022-06-01 at 00:00:00 UTC). <code>start_date</code> must be equal to or greater than today's date (in UTC).</td>\n</tr>\n<tr>\n<td>transaction_limits</td>\n<td>object, optional</td>\n<td>Specifies custom limits per payment transaction. Refer to <code>transaction_limits</code> object data model in <code>POST /mandates</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"recipient_account-object-required\">recipient_account (object, required)</h3>\n<p>Details on the recipient account of the payment (i.e. the Customer App's receiving account).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>account_id</td>\n<td>string, required</td>\n<td>Finverse unique ID for the Customer App's recipient account (will be provided to Customer App during onboarding; please contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> for onboarding)</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"sender_account-object-required\">sender_account (object, required)</h3>\n<p>Details on the sender account of the payment (i.e. the payer's originating account).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>account_id</td>\n<td>string, required</td>\n<td>Finverse unique ID for the sender's Payment Account to be associated with the mandate. Refer to <code>POST /payment_accounts</code> for details on creating Payment Accounts.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-fields\">Response fields</h2>\n<p>Single Payment Method object containg details on the payment method authorized by the end-used (Card or Mandate).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>card</td>\n<td>object, conditional</td>\n<td>Card object. See below.  <br />  <br />Included only if payment_method_type = <code>CARD</code>.</td>\n</tr>\n<tr>\n<td>mandate</td>\n<td>object, conditional</td>\n<td>Mandate object.  <br />  <br />Refer to Mandate object data model in <code>GET /mandates/{mandate_id}</code>.  <br />  <br />Included only if payment_method_type = <code>MANDATE</code>.</td>\n</tr>\n<tr>\n<td>payment_method_id</td>\n<td>string (ULID)</td>\n<td>Finverse unique ID for this payment method.  <br />  <br />If the <code>Sender</code> has <code>autopay_consent</code> = <code>true</code> , this ID can be used to trigger additional payments on-demand (see <code>POST /</code>payments).</td>\n</tr>\n<tr>\n<td>payment_method_type</td>\n<td>string ENUM</td>\n<td>Type of payment method.  <br />  <br /><strong>Possible values</strong>: <code>CARD</code>, <code>MANDATE</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"card-object-conditional\">card (object, conditional)</h3>\n<p>Details on the card authorized by the end-user.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>card_details</td>\n<td>object</td>\n<td>Additional details on the card</td>\n</tr>\n<tr>\n<td>created_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Time when the card object was first created</td>\n</tr>\n<tr>\n<td>status</td>\n<td>string ENUM</td>\n<td>Current status of the card. Possible values: PROCESSING, SUCCEEDED, CANCELLED, FAILED</td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last update to the card object</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"card_details-object\">card_details (object)</h3>\n<p>Additional details on the card.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>brand</td>\n<td>string</td>\n<td>Card brand.  <br />  <br />Common values: American Express, Diners Club, JCB, Mastercard, UnionPay, Visa.</td>\n</tr>\n<tr>\n<td>last4</td>\n<td>string</td>\n<td>Last 4 digits of the card number</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"sender-object\">sender (object)</h3>\n<p>The sender object includes a Payment User object for the sender of the payment. Refer to the Payment User data model in <code>GET /payment_users/{payment_user_id}</code> for details on the Payment User object.</p>\n<p>Note: Some Payment User metadata fields are omitted for clarity (e.g. <code>created_at</code>, <code>metadata</code>, <code>updated_at</code>).</p>\n","urlObject":{"path":["payment_users","{{user_id}}","payment_methods"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"d64f9193-a0cd-42fa-a9c0-893758170105","name":"Success (Mandate)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/payment_users/01HSJA5TNAQSRZEZGX9KM3WPM8/payment_methods"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1711085442"},{"key":"Date","value":"Fri, 22 Mar 2024 05:30:41 GMT"},{"key":"Content-Length","value":"1493"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"payment_methods\": [\n        {\n            \"mandate\": {\n                \"created_at\": \"2024-03-22T05:30:07.606Z\",\n                \"fees\": [\n                    {\n                        \"amount\": 0,\n                        \"currency\": \"HKD\",\n                        \"paid_by\": \"RECIPIENT\",\n                        \"paid_by_account_id\": \"01H2QD9W1SR1QN7JAMVNF4A6GC\"\n                    }\n                ],\n                \"mandate_details\": {\n                    \"collection_entity_name\": \"Finverse Technologies Limited\",\n                    \"currency\": \"HKD\",\n                    \"description\": \"Payment link mandate\",\n                    \"mandate_bank_reference\": \"01FHF1MEY9-VWNM-01FH\",\n                    \"processor_entity_name\": \"Finverse Technologies Limited\",\n                    \"start_date\": \"2024-03-22\",\n                    \"transaction_limits\": {\n                        \"max_transaction_amount\": 100000000\n                    }\n                },\n                \"mandate_id\": \"01HSJA64F1Q3NGVB3D94XFNHBD\",\n                \"payment_method_id\": \"01HSJA64HAP8KVSXCMP6K7KQY2\",\n                \"recipient\": {\n                    \"name\": \"REGRESSION\"\n                },\n                \"recipient_account\": {\n                    \"account_id\": \"01H2QD9W1SR1QN7JAMVNF4A6GC\",\n                    \"account_type\": \"SETTLEMENT_ACCOUNT\"\n                },\n                \"sender\": {\n                    \"external_user_id\": \"user_id_1||1711085382\",\n                    \"name\": \"John Doe\",\n                    \"user_details\": [],\n                    \"user_id\": \"01HSJA5TNAQSRZEZGX9KM3WPM8\",\n                    \"user_type\": \"INDIVIDUAL\"\n                },\n                \"sender_account\": {\n                    \"account_id\": \"01HSJA6HWKG3ENW4WV678APHHJ\",\n                    \"account_number\": {\n                        \"number\": \"01HSJA6HZW81QPCJXB48AW1FJ9\",\n                        \"type\": \"LOCAL\"\n                    },\n                    \"account_number_masked\": \"XX34\",\n                    \"account_type\": \"EXTERNAL_ACCOUNT\",\n                    \"accountholder_name\": \"01HSJA6HZEBEYWHZ56HSBGJWA7\",\n                    \"institution_id\": \"testbank-dbs-hk\",\n                    \"user_id\": \"01HSJA5TNAQSRZEZGX9KM3WPM8\"\n                },\n                \"status\": \"SUCCEEDED\",\n                \"updated_at\": \"2024-03-22T05:30:06.686Z\"\n            },\n            \"payment_method_id\": \"01HSJA64HAP8KVSXCMP6K7KQY2\",\n            \"payment_method_type\": \"MANDATE\"\n        }\n    ],\n    \"sender\": {\n        \"autopay_consent\": true,\n        \"created_at\": \"2024-03-22T05:29:42.314Z\",\n        \"external_user_id\": \"user_id_1||1711085382\",\n        \"name\": \"John Doe\",\n        \"updated_at\": \"2024-03-22T05:30:11.301Z\",\n        \"user_details\": [],\n        \"user_id\": \"01HSJA5TNAQSRZEZGX9KM3WPM8\",\n        \"user_type\": \"INDIVIDUAL\"\n    }\n}"}],"_postman_id":"fd191ca4-f7c2-4e98-8b44-633a5effb395"},{"name":"/payment_methods (Create Payment Method: Adyen card)","event":[{"listen":"test","script":{"id":"7670c6c5-b256-4a0c-8268-9bfdd2134668","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if(jsonData.payment_method_id) {","    pm.environment.set(\"payment_method_id\", jsonData.payment_method_id)","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payment Methods or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"card\",","        \"mandate\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"card\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"card_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"acquirer_authorization_reference\": {\"type\":\"string\"},","                            \"brand\": {\"type\":\"string\"},","                            \"brand_product_name\": {\"type\":\"string\"},","                            \"card_number_alias\": {\"type\":\"string\"},","                            \"collection_entity_name\": {\"type\":\"string\"},","                            \"country\": {\"type\":\"string\"},","                            \"expiry_month\": {\"type\":\"integer\"},","                            \"expiry_year\": {\"type\":\"integer\"}, ","                            \"fingerprint\": {\"type\":\"string\"},","                            \"finverse_authorization_reference\": {\"type\":\"string\"},","                            \"funding\": {","                                \"type\":\"string\",","                                \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                            },","                            \"is_commercial\": {\"type\":\"boolean\"},","                            \"last4\": {\"type\":\"string\"},","                            \"processor_entity_name\": {\"type\":\"string\"},","                            \"processor_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"auth_code\": {\"type\":\"string\"},","                                    \"processor_id\": {\"type\":\"string\"},","                                    \"processor_reference\": {\"type\":\"string\"},","                                    \"token_id\": {\"type\":\"string\"},","                                },","                                \"required\": []","                            },","                            \"recurring_payment_mode\": {","                                \"type\":\"string\",","                                \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                            }","                        },","                        \"required\": []","                    },","                    \"created_at\": {\"type\":\"string\"},","                    \"recipient_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            }","                        },","                        \"required\": [\"account_id\", \"account_type\"]","                    },","                    \"risk_data\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"processor_risk_data\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"browser_type\": {\"type\":\"string\"},","                                    \"device_type\": {\"type\":\"string\"},","                                    \"shopper_country\": {\"type\":\"string\"},","                                    \"shopper_ip\": {\"type\":\"string\"},","                                    \"shopper_locale\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                        },","                        \"required\": []","                    },","                    \"status\": {","                        \"type\":\"string\",","                        \"enum\": [\"PROCESSING\", \"SUCCEEDED\", \"CANCELLED\"]","                    },","                    \"updated_at\": {\"type\":\"string\"},","                },","                \"required\" : [","                    \"created_at\",","                    \"status\",","                    \"updated_at\"","                ]","            },","            \"integration_metadata\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"adyen_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"auth_code\": {\"type\":\"string\"},","                            \"payment_method_id\": {\"type\":\"string\"},","                            \"psp_reference\": {\"type\":\"string\"}, ","                            \"recurring_processing_model\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"payment_method_id\",","                            \"recurring_processing_model\"","                        ]","                    },","                    \"cybersource_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"payment_token\": {\"type\":\"string\"}  ","                        },","                        \"required\": [","                            \"payment_token\"","                        ]","                    },","                    \"gocardless_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"funds_settlement\": {\"type\":\"string\"},","                            \"last_action\":  {\"type\":\"string\"},","                            \"mandate_id\": {\"type\":\"string\"},","                            \"next_possible_charge_date\": {\"type\":\"string\"}, ","                            \"payments_require_approval\": {\"type\":\"boolean\"},","                            \"reference\": {\"type\":\"string\"},","                            \"scheme\": {\"type\":\"string\"},","                            \"status\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"mandate_id\"","                        ]","                    },","                    \"integration_id\": {","                        \"type\":\"string\",","                        \"enum\": [\"ADYEN\", \"CYBERSOURCE\", \"GOCARDLESS\", \"STRIPE\"]","                    },","                    \"stripe_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"customer\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"id\": {\"type\":\"string\"}","                                },","                                \"required\": [\"id\"] ","                            },","                            \"payment_method\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"id\": {\"type\":\"string\"}","                                },","                                \"required\": [\"id\"] ","                            },","                        },","                        \"required\": [","                            \"customer\",","                            \"payment_method\"","                        ]","                    }","                },","                \"required\": [","                    \"integration_id\"","                ]","            },","            \"mandate\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"created_at\": {\"type\":\"string\"},  ","                    \"error\": {","                        \"type\": \"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"details\": {\"type\":\"string\"},","                            \"error_code\": {\"type\":\"string\"},","                            \"message\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                            }","                        },","                        \"required\" : [","                            \"error_code\",","                            \"message\",","                            \"type\"","                        ]","                    },","                    \"fees\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"amount\": {\"type\":\"integer\"},","                                \"currency\": {\"type\":\"string\"},","                                \"paid_by\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                },","                                \"paid_by_account_id\": {\"type\":\"string\"}","                            },","                            \"required\": [","                                \"amount\", ","                                \"currency\", ","                                \"paid_by\", ","                                \"paid_by_account_id\"","                            ]","                        }","                    },","                    \"mandate_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"collection_entity_name\": {\"type\":\"string\"},","                            \"currency\": {\"type\":\"string\"},","                            \"dda_reference\": {\"type\":\"string\"},","                            \"description\": {\"type\":\"string\"},","                            \"end_date\": {\"type\":\"string\"},","                            \"mandate_bank_reference\": {\"type\":\"string\"},","                            \"payment_schedule\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"amount\": {\"type\":\"integer\"},","                                    \"frequency\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"amount\",","                                    \"frequency\"","                                ]","                            },","                            \"processor_entity_name\": {\"type\":\"string\"},","                            \"start_date\": {\"type\":\"string\"},","                            \"transaction_limits\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"max_period_amount\": {\"type\":\"integer\"},","                                    \"max_period_count\": {\"type\":\"integer\"},","                                    \"max_transaction_amount\": {\"type\":\"integer\"},","                                    \"max_transaction_amount_set_by_payer_initial\": {\"type\":\"integer\"},","                                    \"period\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            }","                        },","                        \"required\": [","                            \"currency\",","                            \"description\"","                        ]","                    },","                    \"mandate_id\": {\"type\":\"string\"},","                    \"metadata\": {\"type\":\"object\"},","                    \"payment_method_id\": {\"type\":\"string\"},","                    \"recipient\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"name\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"name\"","                        ]","                    },","                    \"recipient_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            },","                            \"name\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"account_id\",","                            \"account_type\"","                        ]","                    },","                    \"sender\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"external_user_id\": {\"type\":\"string\"},","                            \"name\": {\"type\":\"string\"},","                            \"user_details\": {","                                \"type\":[\"array\",\"null\"],","                                \"items\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"details_type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                        },","                                        \"values\": {","                                            \"type\": \"array\",","                                            \"items\": {","                                                \"type\": \"string\"","                                            }","                                        }","                                    },","                                    \"required\": [","                                        \"details_type\",","                                        \"values\"","                                    ]","                                }","                            },","                            \"user_id\": {\"type\":\"string\"},","                            \"user_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                            }","                        },","                        \"required\": [","                            \"external_user_id\",","                            //\"name\", // TO BE ENFORCED","                            \"user_id\",","                            \"user_type\"","                        ]","                    },","                    \"sender_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_number\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"number\": {\"type\":\"string\"},","                                    \"type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"IBAN\", \"LOCAL\"]","                                    }","                                },","                                \"required\": [","                                    \"number\",","                                    \"type\"","                                ]","                            },","                            \"account_number_masked\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            },","                            \"accountholder_name\": {\"type\":\"string\"},","                            \"bank_code\": {\"type\":\"string\"},","                            \"institution_id\": {\"type\":\"string\"},","                            \"institution_name\": {\"type\":\"string\"},","                            \"user_id\": {\"type\":\"string\"},","                        },","                        \"required\": [","                            \"account_type\",","                            \"user_id\"","                        ]","                    },","                    \"status\": {","                        \"type\":\"string\",","                        \"enum\": [\"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"CLOSED\", \"FAILED\"]","                    },","                    \"updated_at\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"created_at\",","                    \"fees\",","                    \"mandate_details\",","                    \"mandate_id\",","                    \"payment_method_id\",","                    \"recipient\",","                    \"sender\",","                    \"status\",","                    \"updated_at\"","                ]","            },","            \"payment_method_id\": {\"type\": \"string\"},","            \"payment_method_type\": {","                \"type\": \"string\",","                \"enum\": [\"CARD\", \"MANDATE\"]","            }","        },","        \"if\": {","            \"properties\": {","                \"payment_method_type\": {\"const\": \"CARD\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"card\",","                \"payment_method_id\",","                \"payment_method_type\"","            ]","        },","        \"if\": {","            \"properties\": {","                \"payment_method_type\": {\"const\": \"MANDATE\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"mandate\",","                \"payment_method_id\",","                \"payment_method_type\"","            ]","        }","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"1a8ac26b-70d0-4b53-8f4a-cad5996aa518","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"body":{"mode":"raw","raw":"{\n    \"card\": {\n        \"card_details\": {\n            \"brand\": \"Mastercard\",\n            \"brand_product_name\": \"Mastercard\",\n            \"card_number_alias\": \"F495225511395777\",\n            \"collection_entity_name\": \"Demo Company Limited\",\n            \"country\": \"HK\",\n            \"currency\": \"HKD\",\n            \"expiry_month\": 3,\n            \"expiry_year\": 2030,\n            \"fingerprint\": \"5ePOmfH7G5irogopQi8b1XfF4G3CF\",\n            \"finverse_authorization_reference\": \"FC260415XP40\",\n            \"last4\": \"1111\",\n            \"processor_details\": {\n                \"auth_code\": \"070240\",\n                \"processor_id\": \"ADYEN\",\n                \"processor_reference\": \"PTQK3MZ7F9SRCTV5\",\n                \"token_id\": \"WV947F3N9PJ3JWV5\"\n            },\n            \"recurring_payment_mode\": \"FIXED_SCHEDULE\"\n        },\n        \"recipient_account\": {\n            \"account_id\": \"contact_finverse_support\"\n        },\n        \"status\": \"SUCCEEDED\"\n    },\n    \"integration_metadata\": {\n        \"adyen_metadata\": {\n            \"auth_code\": \"070240\",\n            \"payment_method_id\": \"WV947F3N9PJ3JWV5\",\n            \"psp_reference\": \"PTQK3MZ7F9SRCTV5\",\n            \"recurring_processing_model\": \"Subscription\"\n        },\n        \"integration_id\": \"ADYEN\"\n    },\n\t\"payment_method_type\": \"CARD\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_users/{{user_id}}/payment_methods","description":"<p><em>Note: this endpoint is primarily intended for migrating payment methods from other payment gateways into Finverse.</em></p>\n<p>Manually register a Payment Method, referencing a valid card or direct debit mandate (already setup on a 3rd party payment gateway).</p>\n<p>The fields required depend on whether the payment method to be registered is a card or direct debit mandate.</p>\n<p>This request example creates a <strong>card payment method.</strong> See the previous requests for an example of creating a <strong>direct debit mandate</strong>.</p>\n<p>See <code>POST /payment_users/{user_id}/payment_methods (Create Payment Method: direct debit mandate)</code> for full details on the request &amp; response.</p>\n<p><strong>Access:</strong> This flow is available on demand for Finverse customers who want to directly create or migrate Payment Methods. Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> to request access.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n","urlObject":{"path":["payment_users","{{user_id}}","payment_methods"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"8fc93bb7-e1e7-464a-9e78-36afed34c8f5","name":"Success (Adyen card)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"body":{"mode":"raw","raw":"{\n    \"card\": {\n        \"card_details\": {\n            \"brand\": \"Mastercard\",\n            \"brand_product_name\": \"Mastercard\",\n            \"card_number_alias\": \"F495225511395777\",\n            \"collection_entity_name\": \"Demo Company Limited\",\n            \"country\": \"HK\",\n            \"currency\": \"HKD\",\n            \"expiry_month\": 3,\n            \"expiry_year\": 2030,\n            \"fingerprint\": \"5ePOmfH7G5irogopQi8b1XfF4G3CF\",\n            \"finverse_authorization_reference\": \"FC260415XP40\",\n            \"last4\": \"1111\",\n            \"processor_details\": {\n                \"auth_code\": \"070240\",\n                \"processor_id\": \"ADYEN\",\n                \"processor_reference\": \"PTQK3MZ7F9SRCTV5\",\n                \"token_id\": \"WV947F3N9PJ3JWV5\"\n            },\n            \"recurring_payment_mode\": \"FIXED_SCHEDULE\"\n        },\n        \"recipient_account\": {\n            \"account_id\": \"contact_finverse_support\"\n        },\n        \"status\": \"SUCCEEDED\"\n    },\n    \"integration_metadata\": {\n        \"adyen_metadata\": {\n            \"auth_code\": \"070240\",\n            \"payment_method_id\": \"WV947F3N9PJ3JWV5\",\n            \"psp_reference\": \"PTQK3MZ7F9SRCTV5\",\n            \"recurring_processing_model\": \"Subscription\"\n        },\n        \"integration_id\": \"ADYEN\"\n    },\n\t\"payment_method_type\": \"CARD\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_users/{{user_id}}/payment_methods"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1761285635"},{"key":"Date","value":"Fri, 24 Oct 2025 06:00:35 GMT"},{"key":"Content-Length","value":"770"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"card\": {\n        \"card_details\": {\n            \"brand\": \"Mastercard\",\n            \"brand_product_name\": \"Mastercard\",\n            \"card_number_alias\": \"F495225511395777\",\n            \"collection_entity_name\": \"Demo Company Limited\",\n            \"country\": \"HK\",\n            \"expiry_month\": 3,\n            \"expiry_year\": 2030,\n            \"fingerprint\": \"5ePOmfH7G5irogopQi8b1XfF4G3CF\",\n            \"finverse_authorization_reference\": \"FC260415XP40\",\n            \"last4\": \"1111\",\n            \"processor_details\": {\n                \"auth_code\": \"070240\",\n                \"processor_id\": \"ADYEN\",\n                \"processor_reference\": \"PTQK3MZ7F9SRCTV5\",\n                \"token_id\": \"WV947F3N9PJ3JWV5\"\n            }\n        },\n        \"created_at\": \"2025-10-24T06:00:35.712Z\",\n        \"recipient_account\": {\n            \"account_id\": \"01K4YESKNJCPJ52QS9V4GC95KK\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\"\n        },\n        \"status\": \"SUCCEEDED\",\n        \"updated_at\": \"2025-10-24T06:00:35.712Z\"\n    },\n    \"integration_metadata\": {\n        \"adyen_metadata\": {\n            \"auth_code\": \"070240\",\n            \"payment_method_id\": \"WV947F3N9PJ3JWV5\",\n            \"psp_reference\": \"PTQK3MZ7F9SRCTV5\",\n            \"recurring_processing_model\": \"UnscheduledCardOnFile\"\n        },\n        \"integration_id\": \"ADYEN\"\n    },\n    \"payment_method_id\": \"01KPQEPCD9EXCSA27WCDP3X0JR\",\n    \"payment_method_type\": \"CARD\"\n}"}],"_postman_id":"1a8ac26b-70d0-4b53-8f4a-cad5996aa518"},{"name":"/payment_methods (Create Payment Method: Cybersource card)","event":[{"listen":"test","script":{"id":"7670c6c5-b256-4a0c-8268-9bfdd2134668","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if(jsonData.payment_method_id) {","    pm.environment.set(\"payment_method_id\", jsonData.payment_method_id)","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payment Methods or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"card\",","        \"mandate\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"card\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"card_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"acquirer_authorization_reference\": {\"type\":\"string\"},","                            \"brand\": {\"type\":\"string\"},","                            \"brand_product_name\": {\"type\":\"string\"},","                            \"card_number_alias\": {\"type\":\"string\"},","                            \"collection_entity_name\": {\"type\":\"string\"},","                            \"country\": {\"type\":\"string\"},","                            \"expiry_month\": {\"type\":\"integer\"},","                            \"expiry_year\": {\"type\":\"integer\"}, ","                            \"fingerprint\": {\"type\":\"string\"},","                            \"finverse_authorization_reference\": {\"type\":\"string\"},","                            \"funding\": {","                                \"type\":\"string\",","                                \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                            },","                            \"is_commercial\": {\"type\":\"boolean\"},","                            \"last4\": {\"type\":\"string\"},","                            \"processor_entity_name\": {\"type\":\"string\"},","                            \"processor_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"auth_code\": {\"type\":\"string\"},","                                    \"processor_id\": {\"type\":\"string\"},","                                    \"processor_reference\": {\"type\":\"string\"},","                                    \"token_id\": {\"type\":\"string\"},","                                },","                                \"required\": []","                            },","                            \"recurring_payment_mode\": {","                                \"type\":\"string\",","                                \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                            }","                        },","                        \"required\": []","                    },","                    \"created_at\": {\"type\":\"string\"},","                    \"recipient_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            }","                        },","                        \"required\": [\"account_id\", \"account_type\"]","                    },","                    \"risk_data\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"processor_risk_data\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"browser_type\": {\"type\":\"string\"},","                                    \"device_type\": {\"type\":\"string\"},","                                    \"shopper_country\": {\"type\":\"string\"},","                                    \"shopper_ip\": {\"type\":\"string\"},","                                    \"shopper_locale\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                        },","                        \"required\": []","                    },","                    \"status\": {","                        \"type\":\"string\",","                        \"enum\": [\"PROCESSING\", \"SUCCEEDED\", \"CANCELLED\"]","                    },","                    \"updated_at\": {\"type\":\"string\"},","                },","                \"required\" : [","                    \"created_at\",","                    \"status\",","                    \"updated_at\"","                ]","            },","            \"integration_metadata\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"adyen_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"auth_code\": {\"type\":\"string\"},","                            \"payment_method_id\": {\"type\":\"string\"},","                            \"psp_reference\": {\"type\":\"string\"}, ","                            \"recurring_processing_model\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"payment_method_id\",","                            \"recurring_processing_model\"","                        ]","                    },","                    \"cybersource_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"payment_token\": {\"type\":\"string\"}  ","                        },","                        \"required\": [","                            \"payment_token\"","                        ]","                    },","                    \"gocardless_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"funds_settlement\": {\"type\":\"string\"},","                            \"last_action\":  {\"type\":\"string\"},","                            \"mandate_id\": {\"type\":\"string\"},","                            \"next_possible_charge_date\": {\"type\":\"string\"}, ","                            \"payments_require_approval\": {\"type\":\"boolean\"},","                            \"reference\": {\"type\":\"string\"},","                            \"scheme\": {\"type\":\"string\"},","                            \"status\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"mandate_id\"","                        ]","                    },","                    \"integration_id\": {","                        \"type\":\"string\",","                        \"enum\": [\"ADYEN\", \"CYBERSOURCE\", \"GOCARDLESS\", \"STRIPE\"]","                    },","                    \"stripe_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"customer\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"id\": {\"type\":\"string\"}","                                },","                                \"required\": [\"id\"] ","                            },","                            \"payment_method\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"id\": {\"type\":\"string\"}","                                },","                                \"required\": [\"id\"] ","                            },","                        },","                        \"required\": [","                            \"customer\",","                            \"payment_method\"","                        ]","                    }","                },","                \"required\": [","                    \"integration_id\"","                ]","            },","            \"mandate\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"created_at\": {\"type\":\"string\"},  ","                    \"error\": {","                        \"type\": \"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"details\": {\"type\":\"string\"},","                            \"error_code\": {\"type\":\"string\"},","                            \"message\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                            }","                        },","                        \"required\" : [","                            \"error_code\",","                            \"message\",","                            \"type\"","                        ]","                    },","                    \"fees\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"amount\": {\"type\":\"integer\"},","                                \"currency\": {\"type\":\"string\"},","                                \"paid_by\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                },","                                \"paid_by_account_id\": {\"type\":\"string\"}","                            },","                            \"required\": [","                                \"amount\", ","                                \"currency\", ","                                \"paid_by\", ","                                \"paid_by_account_id\"","                            ]","                        }","                    },","                    \"mandate_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"collection_entity_name\": {\"type\":\"string\"},","                            \"currency\": {\"type\":\"string\"},","                            \"dda_reference\": {\"type\":\"string\"},","                            \"description\": {\"type\":\"string\"},","                            \"end_date\": {\"type\":\"string\"},","                            \"mandate_bank_reference\": {\"type\":\"string\"},","                            \"payment_schedule\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"amount\": {\"type\":\"integer\"},","                                    \"frequency\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"amount\",","                                    \"frequency\"","                                ]","                            },","                            \"processor_entity_name\": {\"type\":\"string\"},","                            \"start_date\": {\"type\":\"string\"},","                            \"transaction_limits\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"max_period_amount\": {\"type\":\"integer\"},","                                    \"max_period_count\": {\"type\":\"integer\"},","                                    \"max_transaction_amount\": {\"type\":\"integer\"},","                                    \"max_transaction_amount_set_by_payer_initial\": {\"type\":\"integer\"},","                                    \"period\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            }","                        },","                        \"required\": [","                            \"currency\",","                            \"description\"","                        ]","                    },","                    \"mandate_id\": {\"type\":\"string\"},","                    \"metadata\": {\"type\":\"object\"},","                    \"payment_method_id\": {\"type\":\"string\"},","                    \"recipient\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"name\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"name\"","                        ]","                    },","                    \"recipient_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            },","                            \"name\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"account_id\",","                            \"account_type\"","                        ]","                    },","                    \"sender\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"external_user_id\": {\"type\":\"string\"},","                            \"name\": {\"type\":\"string\"},","                            \"user_details\": {","                                \"type\":[\"array\",\"null\"],","                                \"items\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"details_type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                        },","                                        \"values\": {","                                            \"type\": \"array\",","                                            \"items\": {","                                                \"type\": \"string\"","                                            }","                                        }","                                    },","                                    \"required\": [","                                        \"details_type\",","                                        \"values\"","                                    ]","                                }","                            },","                            \"user_id\": {\"type\":\"string\"},","                            \"user_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                            }","                        },","                        \"required\": [","                            \"external_user_id\",","                            //\"name\", // TO BE ENFORCED","                            \"user_id\",","                            \"user_type\"","                        ]","                    },","                    \"sender_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_number\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"number\": {\"type\":\"string\"},","                                    \"type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"IBAN\", \"LOCAL\"]","                                    }","                                },","                                \"required\": [","                                    \"number\",","                                    \"type\"","                                ]","                            },","                            \"account_number_masked\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            },","                            \"accountholder_name\": {\"type\":\"string\"},","                            \"bank_code\": {\"type\":\"string\"},","                            \"institution_id\": {\"type\":\"string\"},","                            \"institution_name\": {\"type\":\"string\"},","                            \"user_id\": {\"type\":\"string\"},","                        },","                        \"required\": [","                            \"account_type\",","                            \"user_id\"","                        ]","                    },","                    \"status\": {","                        \"type\":\"string\",","                        \"enum\": [\"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"CLOSED\", \"FAILED\"]","                    },","                    \"updated_at\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"created_at\",","                    \"fees\",","                    \"mandate_details\",","                    \"mandate_id\",","                    \"payment_method_id\",","                    \"recipient\",","                    \"sender\",","                    \"status\",","                    \"updated_at\"","                ]","            },","            \"payment_method_id\": {\"type\": \"string\"},","            \"payment_method_type\": {","                \"type\": \"string\",","                \"enum\": [\"CARD\", \"MANDATE\"]","            }","        },","        \"if\": {","            \"properties\": {","                \"payment_method_type\": {\"const\": \"CARD\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"card\",","                \"payment_method_id\",","                \"payment_method_type\"","            ]","        },","        \"if\": {","            \"properties\": {","                \"payment_method_type\": {\"const\": \"MANDATE\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"mandate\",","                \"payment_method_id\",","                \"payment_method_type\"","            ]","        }","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"6302ccf6-5d86-4f29-b338-cd1390d3aa64","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"body":{"mode":"raw","raw":"{\n\t\"card\": {\n        \"card_details\": {\n            \"brand\": \"Visa\",\n            \"expiry_month\": 3,\n            \"expiry_year\": 2026,\n            \"last4\": \"1234\",\n            \"currency\": \"SGD\"\n        },\n\t\t\"recipient_account\": {\n\t\t    \"account_id\": \"contact_finverse_support\"\n\t\t},\n\t\t\"status\": \"SUCCEEDED\"\n\t},\n    \"integration_metadata\": {\n        \"integration_id\": \"CYBERSOURCE\",\n        \"cybersource_metadata\": {\n            \"payment_token\": \"23DACC841CCE235CE063AF598E0A779B\"\n        }\n    },\n\t\"payment_method_type\": \"CARD\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_users/{{user_id}}/payment_methods","description":"<p><em>Note: this endpoint is primarily intended for migrating payment methods from other payment gateways into Finverse.</em></p>\n<p>Manually register a Payment Method, referencing a valid card or direct debit mandate (already setup on a 3rd party payment gateway).</p>\n<p>The fields required depend on whether the payment method to be registered is a card or direct debit mandate.</p>\n<p>This request example creates a <strong>card payment method.</strong> See the previous requests for an example of creating a <strong>direct debit mandate</strong>.</p>\n<p>See <code>POST /payment_users/{user_id}/payment_methods (Create Payment Method: direct debit mandate)</code> for full details on the request &amp; response.</p>\n<p><strong>Access:</strong> This flow is available on demand for Finverse customers who want to directly create or migrate Payment Methods. Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> to request access.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n","urlObject":{"path":["payment_users","{{user_id}}","payment_methods"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"80d44dc8-5378-47e1-bdcb-f3c2f737949b","name":"Success (Cybersource card)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"body":{"mode":"raw","raw":"{\n\t\"card\": {\n        \"card_details\": {\n            \"brand\": \"Visa\",\n            \"expiry_month\": 3,\n            \"expiry_year\": 2026,\n            \"last4\": \"1234\",\n            \"currency\": \"SGD\"\n        },\n\t\t\"recipient_account\": {\n\t\t    \"account_id\": \"contact_finverse_support\"\n\t\t},\n\t\t\"status\": \"SUCCEEDED\"\n\t},\n    \"integration_metadata\": {\n        \"integration_id\": \"CYBERSOURCE\",\n        \"cybersource_metadata\": {\n            \"payment_token\": \"23DACC841CCE235CE063AF598E0A779B\"\n        }\n    },\n\t\"payment_method_type\": \"CARD\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_users/{{user_id}}/payment_methods"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1733229590"},{"key":"Date","value":"Tue, 03 Dec 2024 12:39:50 GMT"},{"key":"Content-Length","value":"505"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"card\": {\n        \"card_details\": {\n            \"brand\": \"Visa\",\n            \"collection_entity_name\": \"Finverse Technologies Limited\",\n            \"expiry_month\": 3,\n            \"expiry_year\": 2026,\n            \"last4\": \"1234\"\n        },\n        \"created_at\": \"2024-12-03T12:39:49.989Z\",\n        \"recipient_account\": {\n            \"account_id\": \"01JE5MNR43T7Y8CDNH06M1S4FP\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\"\n        },\n        \"status\": \"SUCCEEDED\",\n        \"updated_at\": \"2024-12-03T12:39:49.989Z\"\n    },\n    \"integration_metadata\": {\n        \"cybersource_metadata\": {\n            \"payment_token\": \"23DACC841CCE235CE063AF598E0A779B\"\n        },\n        \"integration_id\": \"CYBERSOURCE\"\n    },\n    \"payment_method_id\": \"01JE68HDEWQQ4C6A4JG2DAWBR9\",\n    \"payment_method_type\": \"CARD\"\n}"}],"_postman_id":"6302ccf6-5d86-4f29-b338-cd1390d3aa64"},{"name":"/payment_methods (Create Payment Method: GoCardless Mandate)","event":[{"listen":"test","script":{"id":"7670c6c5-b256-4a0c-8268-9bfdd2134668","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if(jsonData.payment_method_id) {","    pm.environment.set(\"payment_method_id\", jsonData.payment_method_id)","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payment Methods or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"card\",","        \"mandate\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"card\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"card_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"acquirer_authorization_reference\": {\"type\":\"string\"},","                            \"brand\": {\"type\":\"string\"},","                            \"brand_product_name\": {\"type\":\"string\"},","                            \"card_number_alias\": {\"type\":\"string\"},","                            \"collection_entity_name\": {\"type\":\"string\"},","                            \"country\": {\"type\":\"string\"},","                            \"expiry_month\": {\"type\":\"integer\"},","                            \"expiry_year\": {\"type\":\"integer\"}, ","                            \"fingerprint\": {\"type\":\"string\"},","                            \"finverse_authorization_reference\": {\"type\":\"string\"},","                            \"funding\": {","                                \"type\":\"string\",","                                \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                            },","                            \"is_commercial\": {\"type\":\"boolean\"},","                            \"last4\": {\"type\":\"string\"},","                            \"processor_entity_name\": {\"type\":\"string\"},","                            \"processor_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"auth_code\": {\"type\":\"string\"},","                                    \"processor_id\": {\"type\":\"string\"},","                                    \"processor_reference\": {\"type\":\"string\"},","                                    \"token_id\": {\"type\":\"string\"},","                                },","                                \"required\": []","                            },","                            \"recurring_payment_mode\": {","                                \"type\":\"string\",","                                \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                            }","                        },","                        \"required\": []","                    },","                    \"created_at\": {\"type\":\"string\"},","                    \"recipient_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            }","                        },","                        \"required\": [\"account_id\", \"account_type\"]","                    },","                    \"risk_data\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"processor_risk_data\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"browser_type\": {\"type\":\"string\"},","                                    \"device_type\": {\"type\":\"string\"},","                                    \"shopper_country\": {\"type\":\"string\"},","                                    \"shopper_ip\": {\"type\":\"string\"},","                                    \"shopper_locale\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                        },","                        \"required\": []","                    },","                    \"status\": {","                        \"type\":\"string\",","                        \"enum\": [\"PROCESSING\", \"SUCCEEDED\", \"CANCELLED\"]","                    },","                    \"updated_at\": {\"type\":\"string\"},","                },","                \"required\" : [","                    \"created_at\",","                    \"status\",","                    \"updated_at\"","                ]","            },","            \"integration_metadata\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"adyen_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"auth_code\": {\"type\":\"string\"},","                            \"payment_method_id\": {\"type\":\"string\"},","                            \"psp_reference\": {\"type\":\"string\"}, ","                            \"recurring_processing_model\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"payment_method_id\",","                            \"recurring_processing_model\"","                        ]","                    },","                    \"cybersource_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"payment_token\": {\"type\":\"string\"}  ","                        },","                        \"required\": [","                            \"payment_token\"","                        ]","                    },","                    \"gocardless_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"funds_settlement\": {\"type\":\"string\"},","                            \"last_action\":  {\"type\":\"string\"},","                            \"mandate_id\": {\"type\":\"string\"},","                            \"next_possible_charge_date\": {\"type\":\"string\"}, ","                            \"payments_require_approval\": {\"type\":\"boolean\"},","                            \"reference\": {\"type\":\"string\"},","                            \"scheme\": {\"type\":\"string\"},","                            \"status\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"mandate_id\"","                        ]","                    },","                    \"integration_id\": {","                        \"type\":\"string\",","                        \"enum\": [\"ADYEN\", \"CYBERSOURCE\", \"GOCARDLESS\", \"STRIPE\"]","                    },","                    \"stripe_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"customer\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"id\": {\"type\":\"string\"}","                                },","                                \"required\": [\"id\"] ","                            },","                            \"payment_method\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"id\": {\"type\":\"string\"}","                                },","                                \"required\": [\"id\"] ","                            },","                        },","                        \"required\": [","                            \"customer\",","                            \"payment_method\"","                        ]","                    }","                },","                \"required\": [","                    \"integration_id\"","                ]","            },","            \"mandate\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"created_at\": {\"type\":\"string\"},  ","                    \"error\": {","                        \"type\": \"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"details\": {\"type\":\"string\"},","                            \"error_code\": {\"type\":\"string\"},","                            \"message\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                            }","                        },","                        \"required\" : [","                            \"error_code\",","                            \"message\",","                            \"type\"","                        ]","                    },","                    \"fees\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"amount\": {\"type\":\"integer\"},","                                \"currency\": {\"type\":\"string\"},","                                \"paid_by\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                },","                                \"paid_by_account_id\": {\"type\":\"string\"}","                            },","                            \"required\": [","                                \"amount\", ","                                \"currency\", ","                                \"paid_by\", ","                                \"paid_by_account_id\"","                            ]","                        }","                    },","                    \"mandate_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"collection_entity_name\": {\"type\":\"string\"},","                            \"currency\": {\"type\":\"string\"},","                            \"dda_reference\": {\"type\":\"string\"},","                            \"description\": {\"type\":\"string\"},","                            \"end_date\": {\"type\":\"string\"},","                            \"mandate_bank_reference\": {\"type\":\"string\"},","                            \"payment_schedule\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"amount\": {\"type\":\"integer\"},","                                    \"frequency\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"amount\",","                                    \"frequency\"","                                ]","                            },","                            \"processor_entity_name\": {\"type\":\"string\"},","                            \"start_date\": {\"type\":\"string\"},","                            \"transaction_limits\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"max_period_amount\": {\"type\":\"integer\"},","                                    \"max_period_count\": {\"type\":\"integer\"},","                                    \"max_transaction_amount\": {\"type\":\"integer\"},","                                    \"max_transaction_amount_set_by_payer_initial\": {\"type\":\"integer\"},","                                    \"period\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            }","                        },","                        \"required\": [","                            \"currency\",","                            \"description\"","                        ]","                    },","                    \"mandate_id\": {\"type\":\"string\"},","                    \"metadata\": {\"type\":\"object\"},","                    \"payment_method_id\": {\"type\":\"string\"},","                    \"recipient\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"name\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"name\"","                        ]","                    },","                    \"recipient_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            },","                            \"name\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"account_id\",","                            \"account_type\"","                        ]","                    },","                    \"sender\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"external_user_id\": {\"type\":\"string\"},","                            \"name\": {\"type\":\"string\"},","                            \"user_details\": {","                                \"type\":[\"array\",\"null\"],","                                \"items\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"details_type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                        },","                                        \"values\": {","                                            \"type\": \"array\",","                                            \"items\": {","                                                \"type\": \"string\"","                                            }","                                        }","                                    },","                                    \"required\": [","                                        \"details_type\",","                                        \"values\"","                                    ]","                                }","                            },","                            \"user_id\": {\"type\":\"string\"},","                            \"user_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                            }","                        },","                        \"required\": [","                            \"external_user_id\",","                            //\"name\", // TO BE ENFORCED","                            \"user_id\",","                            \"user_type\"","                        ]","                    },","                    \"sender_account\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_id\": {\"type\":\"string\"},","                            \"account_number\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"number\": {\"type\":\"string\"},","                                    \"type\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"IBAN\", \"LOCAL\"]","                                    }","                                },","                                \"required\": [","                                    \"number\",","                                    \"type\"","                                ]","                            },","                            \"account_number_masked\": {\"type\":\"string\"},","                            \"account_type\": {","                                \"type\":\"string\",","                                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                            },","                            \"accountholder_name\": {\"type\":\"string\"},","                            \"bank_code\": {\"type\":\"string\"},","                            \"institution_id\": {\"type\":\"string\"},","                            \"institution_name\": {\"type\":\"string\"},","                            \"user_id\": {\"type\":\"string\"},","                        },","                        \"required\": [","                            \"account_type\",","                            \"user_id\"","                        ]","                    },","                    \"status\": {","                        \"type\":\"string\",","                        \"enum\": [\"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"CLOSED\", \"FAILED\"]","                    },","                    \"updated_at\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"created_at\",","                    \"fees\",","                    \"mandate_details\",","                    \"mandate_id\",","                    \"payment_method_id\",","                    \"recipient\",","                    \"sender\",","                    \"status\",","                    \"updated_at\"","                ]","            },","            \"payment_method_id\": {\"type\": \"string\"},","            \"payment_method_type\": {","                \"type\": \"string\",","                \"enum\": [\"CARD\", \"MANDATE\"]","            }","        },","        \"if\": {","            \"properties\": {","                \"payment_method_type\": {\"const\": \"CARD\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"card\",","                \"payment_method_id\",","                \"payment_method_type\"","            ]","        },","        \"if\": {","            \"properties\": {","                \"payment_method_type\": {\"const\": \"MANDATE\"}","            }","        },","        \"then\": {","            \"required\" : [","                \"mandate\",","                \"payment_method_id\",","                \"payment_method_type\"","            ]","        }","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"f03f73b6-7713-4a59-8a00-6856829d3805","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"body":{"mode":"raw","raw":"{\n  \"integration_metadata\": {\n    \"gocardless_metadata\": {\n      \"funds_settlement\": \"managed\",\n      \"mandate_id\": \"MD01K8F72JABC1\",\n      //\"next_possible_charge_date\": \"2026-01-19\",\n      \"reference\": \"TESTMANDATE-1234\",\n      \"scheme\": \"becs\",\n      \"status\": \"active\"\n    },\n    \"integration_id\": \"GOCARDLESS\"\n  },\n  \"mandate\": {\n    \"mandate_details\": {\n      \"currency\": \"AUD\",\n      \"description\": \"GoCardless Mandate - TESTMANDATE-1234\"\n    },\n    \"recipient_account\": {\n      \"account_id\": \"01KFF2KAXWF93DSR0X1ABCDAB1\"\n    },\n    \"sender_account\": {\n      \"account_id\": \"01KFE2S3WWQBAA8MJK12ABCD1A\"\n    },\n    \"status\": \"SUCCEEDED\"\n  },\n  \"payment_method_type\": \"MANDATE\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_users/{{user_id}}/payment_methods","description":"<p><em>Note: this endpoint is primarily intended for migrating payment methods from other payment gateways into Finverse.</em></p>\n<p>Manually register a Payment Method, referencing a valid card or direct debit mandate (already setup on a 3rd party payment gateway).</p>\n<p>The fields required depend on whether the payment method to be registered is a card or direct debit mandate.</p>\n<p>This request example creates a <strong>card payment method.</strong> See the previous requests for an example of creating a <strong>direct debit mandate</strong>.</p>\n<p>See <code>POST /payment_users/{user_id}/payment_methods (Create Payment Method: direct debit mandate)</code> for full details on the request &amp; response.</p>\n<p><strong>Access:</strong> This flow is available on demand for Finverse customers who want to directly create or migrate Payment Methods. Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> to request access.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n","urlObject":{"path":["payment_users","{{user_id}}","payment_methods"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"926e6ab2-2ffe-43f1-a4f9-49f83a6491e6","name":"Success (GoCardless mandate)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"body":{"mode":"raw","raw":"{\n  \"integration_metadata\": {\n    \"gocardless_metadata\": {\n      \"funds_settlement\": \"managed\",\n      \"mandate_id\": \"MD01K8F72JABC1\",\n      //\"next_possible_charge_date\": \"2026-01-19\",\n      \"reference\": \"TESTMANDATE-1234\",\n      \"scheme\": \"becs\",\n      \"status\": \"active\"\n    },\n    \"integration_id\": \"GOCARDLESS\"\n  },\n  \"mandate\": {\n    \"mandate_details\": {\n      \"currency\": \"AUD\",\n      \"description\": \"GoCardless Mandate - TESTMANDATE-1234\"\n    },\n    \"metadata\": {\n        \"gocardless_mandate_id\": \"MD01K8F72JABC1\",\n        \"source\": \"GOCARDLESS_MIGRATION\"\n    },\n    \"recipient_account\": {\n      \"account_id\": \"01KFF2KAXWF93DSR0X1ABCDAB1\"\n    },\n    \"sender_account\": {\n      \"account_id\": \"01KFE2S3WWQBAA8MJK12ABCD1A\"\n    },\n    \"status\": \"SUCCEEDED\"\n  },\n  \"payment_method_type\": \"MANDATE\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_users/{{user_id}}/payment_methods"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1768961728"},{"key":"Date","value":"Wed, 21 Jan 2026 02:15:28 GMT"},{"key":"Content-Length","value":"1313"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"integration_metadata\": {\n        \"gocardless_metadata\": {\n            \"funds_settlement\": \"managed\",\n            \"mandate_id\": \"MD01K8F72JABC1\",\n            \"next_possible_charge_date\": \"0001-01-01\",\n            \"reference\": \"TESTMANDATE-1234\",\n            \"scheme\": \"becs\",\n            \"status\": \"active\"\n        },\n        \"integration_id\": \"GOCARDLESS\"\n    },\n    \"mandate\": {\n        \"created_at\": \"2026-01-21T02:15:28.054Z\",\n        \"fees\": [],\n        \"mandate_details\": {\n            \"collection_entity_name\": \"Test Entity Ltd\",\n            \"currency\": \"AUD\",\n            \"description\": \"GoCardless Mandate - TESTMANDATE-1234\"\n        },\n        \"mandate_id\": \"01KFF5BQFMZ4RD9PQ6TJABC02\",\n        \"payment_method_id\": \"01KFF5BQFMZ4RD9PQ6AB1ABCDE\",\n        \"recipient\": {\n            \"name\": \"Example Co\"\n        },\n        \"recipient_account\": {\n            \"account_id\": \"01KFF2KAXWF93DSR0X1ABCDEF1\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\"\n        },\n        \"sender\": {\n            \"external_user_id\": \"user_1\",\n            \"name\": \"John Doe\",\n            \"user_details\": [],\n            \"user_id\": \"01KFDB8MNB3JN7XRJYABCDE1AB\",\n            \"user_type\": \"INDIVIDUAL\"\n        },\n        \"sender_account\": {\n            \"account_id\": \"01KFE2S3WWQBAA8MJA12ABCD1A\",\n            \"account_number_masked\": \"12\",\n            \"account_type\": \"EXTERNAL_ACCOUNT\",\n            \"accountholder_name\": \"01KFE2S3YCCK3ND0Y5ABCDEF1A\",\n            \"institution_id\": \"westpac-aus-payments\",\n            \"institution_name\": \"Westpac (Australia)\",\n            \"user_id\": \"01KFDB8MNB3JN7XRJYAB1AB0AB\"\n        },\n        \"status\": \"SUCCEEDED\",\n        \"updated_at\": \"2026-01-21T02:15:28.054Z\"\n    },\n    \"payment_method_id\": \"01KFF5BQFMZ4RD9PQ6AB1ABCDE\",\n    \"payment_method_type\": \"MANDATE\"\n}"}],"_postman_id":"f03f73b6-7713-4a59-8a00-6856829d3805"}],"id":"8b84a5f6-5b11-42bf-86e7-80610ee7cfa2","description":"<p>The following Payment Method creation endpoints are primarily used for advanced workflows such as 1-time migrations of existing payment methods from 3rd party gateways to Finverse:</p>\n<ul>\n<li><p><strong>Direct debit authorizations</strong>:</p>\n<ul>\n<li><p>Bank direct debit authorizations (e.g. paper direct debit authorizations)</p>\n</li>\n<li><p>Payment gateway direct debit authorizations (e.g. GoCardless mandates)</p>\n</li>\n</ul>\n</li>\n<li><p><strong>Cards</strong> (tokenized card details) from a card gateway such as:</p>\n<ul>\n<li><p>Adyen</p>\n</li>\n<li><p>Cybersource / Global Payments</p>\n</li>\n<li><p>Stripe</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"8b84a5f6-5b11-42bf-86e7-80610ee7cfa2"}],"id":"ab05485e-3107-4ea8-876c-c70866e59109","_postman_id":"ab05485e-3107-4ea8-876c-c70866e59109","description":""},{"name":"Mandates","item":[{"name":"01 - Setup Mandate","item":[{"name":"/mandates (Create Mandate)","event":[{"listen":"test","script":{"id":"4764f3d4-b10d-4c6e-a628-74f942113a36","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if(jsonData.mandate_id) {","    pm.environment.set(\"mandate_id\", jsonData.mandate_id)","    pm.environment.set(\"payment_method_id\", jsonData.payment_method_id)","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Mandate Status or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"status\",","        \"error\"","    )","});","","//Mandate Status is AUTHORIZATION_REQUIRED","pm.test(\"Mandate Status is AUTHORIZATION_REQUIRED\", function() {","    pm.expect(jsonData.status).to.equal(\"AUTHORIZATION_REQUIRED\")","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"created_at\": {\"type\":\"string\"},  ","            \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"type\"","                ]","            },","            \"fees\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"amount\": {\"type\":\"integer\"},","                        \"currency\": {\"type\":\"string\"},","                        \"paid_by\": {","                            \"type\":\"string\",","                            \"enum\": [\"RECIPIENT\", \"SENDER\"]","                        },","                        \"paid_by_account_id\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"amount\", ","                        \"currency\", ","                        \"paid_by\", ","                        \"paid_by_account_id\"","                    ]","                }","            },","            \"mandate_details\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"collection_entity_name\": {\"type\":\"string\"},","                    \"currency\": {\"type\":\"string\"},","                    \"dda_reference\": {\"type\":\"string\"},","                    \"description\": {\"type\":\"string\"},","                    \"end_date\": {\"type\":\"string\"},","                    \"mandate_bank_reference\": {\"type\":\"string\"},","                    \"payment_schedule\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"amount\": {\"type\":\"integer\"},","                            \"frequency\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"amount\",","                            \"frequency\"","                        ]","                    },","                    \"processor_entity_name\": {\"type\":\"string\"},","                    \"start_date\": {\"type\":\"string\"},","                    \"transaction_limits\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"max_period_amount\": {\"type\":\"integer\"},","                            \"max_period_count\": {\"type\":\"integer\"},","                            \"max_transaction_amount\": {\"type\":\"integer\"},","                            \"max_transaction_amount_set_by_payer_initial\": {\"type\":\"integer\"},","                            \"period\": {\"type\":\"string\"}","                        },","                        \"required\": [ ]","                    }","                },","                \"required\": [","                    \"currency\",","                    \"description\"","                ]","            },","            \"mandate_id\": {\"type\":\"string\"},","            \"metadata\": {\"type\":\"object\"},","            \"payment_method_id\": {\"type\":\"string\"},","            \"recipient\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"name\": {\"type\":\"string\"}","                },","                \"required\": [","                    \"name\"","                ]","            },","            \"recipient_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    },","                    \"name\": {\"type\":\"string\"}","                },","                \"required\": [","                    \"account_id\",","                    \"account_type\"","                ]","            },","            \"sender\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"external_user_id\": {\"type\":\"string\"},","                    \"name\": {\"type\":\"string\"},","                    \"user_details\": {","                        \"type\":[\"array\",\"null\"],","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                },","                                \"values\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"type\": \"string\"","                                    }","                                }","                            },","                            \"required\": [","                                \"details_type\",","                                \"values\"","                            ]","                        }","                    },","                    \"user_id\": {\"type\":\"string\"},","                    \"user_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                    }","                },","                \"required\": [","                    \"external_user_id\",","                    //\"name\", // TO BE ENFORCED","                    \"user_id\",","                    \"user_type\"","                ]","            },","            \"sender_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_number\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"number\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"IBAN\", \"LOCAL\"]","                            }","                        },","                        \"required\": [","                            \"number\",","                            \"type\"","                        ]","                    },","                    \"account_number_masked\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    },","                    \"accountholder_name\": {\"type\":\"string\"},","                    \"bank_code\": {\"type\":\"string\"},","                    \"institution_id\": {\"type\":\"string\"},","                    \"institution_name\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                },","                \"required\": [","                    \"account_type\",","                    \"user_id\"","                ]","            },","            \"status\": {","                \"type\":\"string\",","                \"enum\": [\"AUTHORIZATION_REQUIRED\", \"CLOSED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"FAILED\"]","            },","            \"updated_at\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"created_at\",","            \"fees\",","            \"mandate_details\",","            \"mandate_id\",","            \"payment_method_id\",","            \"recipient\",","            \"sender\",","            \"status\",","            \"updated_at\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","//POSTMAN COLLECTION ROUTING LOGIC","//Reset Mandate status loop count","pm.environment.set(\"mandate_status_loop_number\", \"\");","//POSTMAN COLLECTION ROUTING LOGIC - END"],"type":"text/javascript","packages":{},"requests":{}}},{"listen":"prerequest","script":{"id":"e5c3eb22-5e1c-4bb3-9e47-46bd08e86c4a","exec":["const date = new Date();","pm.environment.set(\"today\", date.toISOString().slice(0,10));",""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"cbcff9e6-b378-4c30-9c69-0a5cfdc39691","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"Idempotency-Key","value":"ce45370c-b4ff-4259-aac2-96455f01dd7e","description":"<p>String, required. Refer to Payments API documentation</p>\n","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"mandate_details\": {\n        \"currency\": \"{{mandate_currency}}\",\n        \"description\": \"Test Mandate\",\n        \"end_date\": \"2026-12-01\",\n        \"start_date\": \"{{today}}\",\n        \"transaction_limits\": {\n            \"max_period_amount\": 10000,\n            \"max_period_count\": 10,\n            \"max_transaction_amount\": {{max_trx_amount_in_minor}},\n            \"period\": \"MONTHLY\"\n        }\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"contact_finverse_support\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"user_id_1_1777634238\",\n        \"name\": \"{{sender_accountholder_name}}\",\n        \"email\": \"info+test@finverse.com\",\n        \"user_details\": [\n            //{\n            //    \"details_type\": \"HK_ID\",\n            //    \"values\": [\n            //    \"P12345678\"\n            //    ]\n            //}\n        ],\n        \"user_type\": \"INDIVIDUAL\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/","description":"<p>Create a Mandate (i.e. pre-authorization) that will be used to make payments, without any existing/known sender account details (the end-user will be requested to input these in the mandate authorization UI).</p>\n<p><code>Idempotency-Key</code> header is <strong>required</strong>. This makes it safe to retry the request without re-triggering the underlying create Mandate operation. Any retries will return the same Mandate response as the first request using the same key.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"request-parameters\">Request parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>mandate_details</td>\n<td>object, required</td>\n<td>Details on the mandate. See below.</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format. E.g. <code>employer_name</code>: <code>Apple Inc</code></td>\n</tr>\n<tr>\n<td>recipient_account</td>\n<td>object, required</td>\n<td>Details on the recipient of the payment (i.e. the Customer App's receiving account). See below.</td>\n</tr>\n<tr>\n<td>sender</td>\n<td>object, required</td>\n<td>Details on the sender of the payment. See below.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"mandate_details-object-required\">mandate_details (object, required)</h3>\n<p>Details describing the Mandate.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code), required</td>\n<td>Currency of the mandate (e.g. HKD)</td>\n</tr>\n<tr>\n<td>description</td>\n<td>string, required</td>\n<td>User-facing description for the mandate</td>\n</tr>\n<tr>\n<td>end_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>Expiration date of the mandate, e.g. <code>2022-12-31</code>. Payment requests will be allowed up to this date (inclusive). All date inputs assume UTC times (e.g. if <code>end_date</code> = <code>2022-12-31</code>, then a payment will be allowed until 2022-12-31 at 23:59:59 UTC). <code>end_date</code> must be equal to or greater than <code>start_date</code> (in UTC).</td>\n</tr>\n<tr>\n<td>payment_schedule</td>\n<td>object, optional</td>\n<td>RESERVED FOR FUTURE USE - Specifies scheduled auto-payments. See below.</td>\n</tr>\n<tr>\n<td>start_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>Start date of the mandate, e.g. <code>2022-06-01</code>. Payment requests will be allowed from this date onwards (inclusive). All date inputs assume UTC times (e.g. if <code>start_date</code> = <code>2022-06-01</code>, then a payment will be allowed starting from 2022-06-01 at 00:00:00 UTC). <code>start_date</code> must be equal to or greater than today's date (in UTC).</td>\n</tr>\n<tr>\n<td>transaction_limits</td>\n<td>object, optional</td>\n<td>Specifies custom limits per payment transaction. See below.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment_schedule-object-optional\">payment_schedule (object, optional)</h3>\n<p>RESERVED FOR FUTURE USE - Specifies scheduled auto-payments with the specified amounts and dates.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>amount</td>\n<td>integer, required</td>\n<td>Amount of the scheduled payment in major currency</td>\n</tr>\n<tr>\n<td>frequency</td>\n<td>string ENUM, required</td>\n<td>Frequency of the scheduled payment. Possible values: <code>DAILY</code>, <code>WEEKLY</code>, <code>MONTHLY</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"transaction_limits-object-optional\">transaction_limits (object, optional)</h3>\n<p>Specifies custom limits on payment transactions executed under the Mandate.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>max_period_amount</td>\n<td>integer, optional</td>\n<td>Maximum cumulative amount (in minor currency unit) of payment transactions (for the specified <code>period</code> unit)</td>\n</tr>\n<tr>\n<td>max_period_count</td>\n<td>integer, optional</td>\n<td>Maximum number of payment transactions (for the specified <code>period</code> unit)</td>\n</tr>\n<tr>\n<td>max_transaction_amount</td>\n<td>integer, optional</td>\n<td>Maximum amount per single payment transaction (in minor currency unit).  <br />  <br />If not specified, the default limits are:  <br />(i) Mandates with <code>sender_type</code> = <code>INDIVIDUAL</code>:  <br />CNY 5,000,  <br />HKD 5,000,  <br />SGD 1,000,  <br />USD 1,000  <br />  <br />(ii) Mandates with <code>sender_type</code> = <code>BUSINESS</code>:  <br />CNY 20,000, HKD 20,000,  <br />SGD 3,000,  <br />USD 3,000</td>\n</tr>\n<tr>\n<td>period</td>\n<td>string ENUM, conditionally required</td>\n<td>Required when providing <code>max_period_amount</code> or <code>max_period_count</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"recipient_account-object-required\">recipient_account (object, required)</h3>\n<p>Details on the recipient account of the payment (i.e. the Customer App's receiving account).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>account_id</td>\n<td>string, required</td>\n<td>Finverse unique ID for the Customer App's recipient account (will be provided to Customer App during onboarding; please contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> for onboarding)</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"sender-object-required\">sender (object, required)</h3>\n<p>Details on the sender of the payment.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>external_user_id</td>\n<td>string, required</td>\n<td>Customer App's unique ID for the sender.</td>\n</tr>\n<tr>\n<td>name</td>\n<td>string, required</td>\n<td>Sender's name or nickname (note: this does not need to exactly match the accountholder name of the sender's account; however accountholder name inputs may be verified against this value).</td>\n</tr>\n<tr>\n<td>user_details</td>\n<td>array of objects, optional</td>\n<td>Additional information about the user's identity. See below.</td>\n</tr>\n<tr>\n<td>user_type</td>\n<td>string ENUM, required</td>\n<td>Type of sender (used to determine what sender authentication inputs are required, e.g. individual ID vs. company registration details). Possible values: <code>INDIVIDUAL</code>, <code>BUSINESS</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"user_details-array-of-objects-optional\">user_details (array of objects, optional)</h3>\n<p>Additional information about the user's identity, used for validating any end-user submitted identity details in the Finverse Link UI.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>details_type</td>\n<td>string ENUM, required</td>\n<td>Type of the sender identity information submitted. Possible values: <code>HK_ID</code>, <code>PASSPORT</code>, <code>HK_BUSINESS_REGISTRATION</code>, <code>HK_CERTIFICATE_OF_INCORPORATION</code></td>\n</tr>\n<tr>\n<td>values</td>\n<td>array of strings, required</td>\n<td>Value(s) of the sender identity information submitted. Min 1 value required, max 10 values.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-fields\">Response fields</h2>\n<p>The response is a Mandate object.</p>\n<p>Refer to Mandate object data model in <code>GET /mandates/{mandate_id}</code>.</p>\n","urlObject":{"path":["mandates",""],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"34f5e8b9-7e91-4e59-be4a-aaea48fd773f","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"a8aa92af-7b3a-4325-a051-1943cfc78ca2","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"mandate_details\": {\n        \"currency\": \"{{mandate_currency}}\",\n        \"description\": \"Test Mandate\",\n        \"end_date\": \"2024-12-01\",\n        \"start_date\": \"{{today}}\",\n        \"transaction_limits\": {\n            \"max_period_amount\": 10000,\n            \"max_period_count\": 10,\n            \"max_transaction_amount\": {{max_trx_amount_in_minor}},\n            \"period\": \"MONTHLY\"\n        }\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"contact_finverse_support\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"user_id_1\",\n        \"name\": \"{{sender_accountholder_name}}\",\n        \"user_details\": [\n            {\n                \"details_type\": \"{{sender_id_type}}\",\n                \"values\": [\"{{sender_id_number}}\"]\n            }\n        ],\n        \"user_type\": \"INDIVIDUAL\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1711638370"},{"key":"Date","value":"Thu, 28 Mar 2024 15:06:10 GMT"},{"key":"Content-Length","value":"847"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"created_at\": \"2024-03-28T15:06:10.744Z\",\n    \"fees\": [],\n    \"mandate_details\": {\n        \"currency\": \"HKD\",\n        \"description\": \"Test Mandate\",\n        \"end_date\": \"2024-12-01\",\n        \"start_date\": \"2024-03-28\",\n        \"transaction_limits\": {\n            \"max_period_amount\": 10000,\n            \"max_period_count\": 10,\n            \"max_transaction_amount\": 10000,\n            \"period\": \"MONTHLY\"\n        }\n    },\n    \"mandate_id\": \"01HT2SHP6DQJ3A4MTR6V5RVDYR\",\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"payment_method_id\": \"01HT2SHPDAFZCHPVCDJ2Z99GX8\",\n    \"recipient\": {\n        \"name\": \"Demo App\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"user_id_1\",\n        \"name\": \"John Doe\",\n        \"user_details\": [\n            {\n                \"details_type\": \"HK_ID\",\n                \"values\": [\n                    \"01HT2SHPCXQNGDGEHTHXTKAB90\"\n                ]\n            }\n        ],\n        \"user_id\": \"01GWKTK0380NBRCV1B8D6N0SEH\",\n        \"user_type\": \"INDIVIDUAL\"\n    },\n    \"status\": \"AUTHORIZATION_REQUIRED\",\n    \"updated_at\": \"2024-03-28T15:06:10.730Z\"\n}"},{"id":"04b28823-66fc-42af-936f-8e8221a69d61","name":"Error (invalid parameter)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"709e9662-fa45-4158-9e1f-dd41cdc1b84d","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"mandate_details\": {\n        \"currency\": \"HKD\",\n        \"description\": \"Test Mandate\",\n        \"end_date\": \"2024-03-01\",\n        \"start_date\": \"{{today}}\",\n        \"transaction_limits\": {\n            \"max_period_amount\": 10000,\n            \"max_period_count\": 10,\n            \"max_transaction_amount\": {{max_trx_amount_in_minor}},\n            \"period\": \"MONTHLY\"\n        }\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"contact_finverse_support\"\n    },\n    \"sender\": {\n        \"name\": \"{{sender_accountholder_name}}\",\n        \"user_details\": [\n            {\n                \"details_type\": \"{{sender_id_type}}\",\n                \"values\": [\"{{sender_id_number}}\"]\n            }\n        ],\n        \"user_id\": \"user_id_1\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Thu, 13 Apr 2023 03:44:46 GMT"},{"key":"Content-Length","value":"217"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"sender.user_type required\",\n        \"error_code\": \"INVALID_PARAMETER\",\n        \"message\": \"The parameters provided are invalid. See details.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"ac2da7f4-2f79-4f58-aeb5-78f01c5c6b76","name":"Error (invalid input)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"690151ec-f669-487d-9873-04410f72a6a3","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"mandate_details\": {\n        \"currency\": \"HKD\",\n        \"description\": \"Test Mandate\",\n        \"end_date\": \"2022-03-01\",\n        \"start_date\": \"{{today}}\",\n        \"transaction_limits\": {\n            \"max_period_amount\": 10000,\n            \"max_period_count\": 10,\n            \"max_transaction_amount\": {{max_trx_amount_in_minor}},\n            \"period\": \"MONTHLY\"\n        }\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"recipient\": {\n        \"recipient_account_id\": \"contact_finverse_support\"\n    },\n    \"sender\": {\n        \"name\": \"{{sender_accountholder_name}}\",\n        \"sender_details\": [\n            {\n                \"details_type\": \"{{sender_id_type}}\",\n                \"values\": [\"{{sender_id_number}}\"]\n            }\n        ],\n        \"sender_type\": \"INDIVIDUAL\",\n        \"user_id\": \"user_id_1\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Thu, 02 Mar 2023 13:00:20 GMT"},{"key":"Content-Length","value":"238"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"EndDate specified is before today (UTC)!\",\n        \"error_code\": \"INVALID_INPUT\",\n        \"message\": \"Invalid parameter value(s). Please review parameter inputs.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"6f913106-d72f-40dc-8992-04c99ed32035","name":"Error (invalid Recipient Account)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"375f64e0-29ca-47c0-8d82-87d027a0d66d","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"mandate_details\": {\n        \"currency\": \"HKD\",\n        \"description\": \"Test Mandate\",\n        \"end_date\": \"2024-03-01\",\n        \"start_date\": \"{{today}}\",\n        \"transaction_limits\": {\n            \"max_period_amount\": 10000,\n            \"max_period_count\": 10,\n            \"max_transaction_amount\": {{max_trx_amount_in_minor}},\n            \"period\": \"MONTHLY\"\n        }\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"{{recipient_account_id2}}\"\n    },\n    \"sender\": {\n        \"name\": \"{{sender_accountholder_name}}\",\n        \"user_details\": [\n            {\n                \"details_type\": \"{{sender_id_type}}\",\n                \"values\": [\"{{sender_id_number}}\"]\n            }\n        ],\n        \"user_type\": \"INDIVIDUAL\",\n        \"user_id\": \"user_id_1\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Thu, 13 Apr 2023 03:43:07 GMT"},{"key":"Content-Length","value":"267"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"Invalid recipient_account_id value. Verify your recipient_account_id.\",\n        \"error_code\": \"INVALID_INPUT\",\n        \"message\": \"Invalid parameter value(s). Please review parameter inputs.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"cbcff9e6-b378-4c30-9c69-0a5cfdc39691"},{"name":"/mandates/sender_account (Create Mandate with existing Sender Account)","event":[{"listen":"test","script":{"id":"4764f3d4-b10d-4c6e-a628-74f942113a36","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if(jsonData.mandate_id) {","    pm.environment.set(\"mandate_id2\", jsonData.mandate_id)","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Mandate Status or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"status\",","        \"error\"","    )","});","","//Mandate Status is AUTHORIZATION_REQUIRED","pm.test(\"Mandate Status is AUTHORIZATION_REQUIRED\", function() {","    pm.expect(jsonData.status).to.equal(\"AUTHORIZATION_REQUIRED\")","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"created_at\": {\"type\":\"string\"},  ","            \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"type\"","                ]","            },","            \"fees\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"amount\": {\"type\":\"integer\"},","                        \"currency\": {\"type\":\"string\"},","                        \"paid_by\": {","                            \"type\":\"string\",","                            \"enum\": [\"RECIPIENT\", \"SENDER\"]","                        },","                        \"paid_by_account_id\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"amount\", ","                        \"currency\", ","                        \"paid_by\", ","                        \"paid_by_account_id\"","                    ]","                }","            },","            \"mandate_details\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"collection_entity_name\": {\"type\":\"string\"},","                    \"currency\": {\"type\":\"string\"},","                    \"dda_reference\": {\"type\":\"string\"},","                    \"description\": {\"type\":\"string\"},","                    \"end_date\": {\"type\":\"string\"},","                    \"mandate_bank_reference\": {\"type\":\"string\"},","                    \"payment_schedule\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"amount\": {\"type\":\"integer\"},","                            \"frequency\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"amount\",","                            \"frequency\"","                        ]","                    },","                    \"processor_entity_name\": {\"type\":\"string\"},","                    \"start_date\": {\"type\":\"string\"},","                    \"transaction_limits\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"max_period_amount\": {\"type\":\"integer\"},","                            \"max_period_count\": {\"type\":\"integer\"},","                            \"max_transaction_amount\": {\"type\":\"integer\"},","                            \"max_transaction_amount_set_by_payer_initial\": {\"type\":\"integer\"},","                            \"period\": {\"type\":\"string\"}","                        },","                        \"required\": [ ]","                    }","                },","                \"required\": [","                    \"currency\",","                    \"description\"","                ]","            },","            \"mandate_id\": {\"type\":\"string\"},","            \"metadata\": {\"type\":\"object\"},","            \"payment_method_id\": {\"type\":\"string\"},","            \"recipient\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"name\": {\"type\":\"string\"}","                },","                \"required\": [","                    \"name\"","                ]","            },","            \"recipient_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    },","                    \"name\": {\"type\":\"string\"}","                },","                \"required\": [","                    \"account_id\",","                    \"account_type\"","                ]","            },","            \"sender\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"external_user_id\": {\"type\":\"string\"},","                    \"name\": {\"type\":\"string\"},","                    \"user_details\": {","                        \"type\":[\"array\",\"null\"],","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                },","                                \"values\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"type\": \"string\"","                                    }","                                }","                            },","                            \"required\": [","                                \"details_type\",","                                \"values\"","                            ]","                        }","                    },","                    \"user_id\": {\"type\":\"string\"},","                    \"user_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                    }","                },","                \"required\": [","                    \"external_user_id\",","                    //\"name\", // TO BE ENFORCED","                    \"user_id\",","                    \"user_type\"","                ]","            },","            \"sender_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_number\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"number\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"IBAN\", \"LOCAL\"]","                            }","                        },","                        \"required\": [","                            \"number\",","                            \"type\"","                        ]","                    },","                    \"account_number_masked\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    },","                    \"accountholder_name\": {\"type\":\"string\"},","                    \"bank_code\": {\"type\":\"string\"},","                    \"institution_id\": {\"type\":\"string\"},","                    \"institution_name\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                },","                \"required\": [","                    \"account_type\",","                    \"user_id\"","                ]","            },","            \"status\": {","                \"type\":\"string\",","                \"enum\": [\"AUTHORIZATION_REQUIRED\", \"CLOSED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"FAILED\"]","            },","            \"updated_at\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"created_at\",","            \"fees\",","            \"mandate_details\",","            \"mandate_id\",","            \"payment_method_id\",","            \"recipient\",","            \"sender\",","            \"status\",","            \"updated_at\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}},{"listen":"prerequest","script":{"id":"e5c3eb22-5e1c-4bb3-9e47-46bd08e86c4a","exec":["const date = new Date();","pm.environment.set(\"today\", date.toISOString().slice(0,10));",""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"fd5e404f-f011-4734-b3df-c8cab39447f4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"Idempotency-Key","value":"a2cb9990-694a-4706-a010-bac80c20d196","description":"<p>String, required. Refer to Payments API documentation</p>\n"},{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"body":{"mode":"raw","raw":"{\n    \"mandate_details\": {\n        \"currency\": \"{{mandate_currency}}\",\n        \"description\": \"Test Mandate\",\n        \"end_date\": \"2026-12-01\",\n        \"start_date\": \"{{today}}\",\n        \"transaction_limits\": {\n            \"max_period_amount\": 10000,\n            \"max_period_count\": 10,\n            \"max_transaction_amount\": {{max_trx_amount_in_minor}},\n            \"period\": \"MONTHLY\"\n        }\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"contact_finverse_support\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"{{existing_sender_account_id}}\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/sender_account","description":"<p>Create a Mandate (i.e. pre-authorization) that will be used to make payments, from an existing sender account (created via <code>POST /payment_accounts</code>).</p>\n<p><code>Idempotency-Key</code> header is <strong>required</strong>. This makes it safe to retry the request without re-triggering the underlying create Mandate operation. Any retries will return the same Mandate response as the first request using the same key.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"request-parameters\">Request parameters</h2>\n<p>Same as <code>POST /mandates</code> (Create Mandate), except for 2 differences:</p>\n<ul>\n<li>Do not provide a <code>sender</code> object</li>\n<li>Instead, provide a <code>sender_account</code> object, as specified below.</li>\n</ul>\n<h3 id=\"sender_account-object-required\">sender_account (object, required)</h3>\n<p>Details on the account sending the payment. This must reference an existing payment account, created via <code>POST /payment_accounts</code>.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>account_id</td>\n<td>string, required</td>\n<td>Unique ID for the sender account</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-fields\">Response fields</h2>\n<p>The response is a Mandate object.</p>\n<p>Refer to Mandate object data model in <code>GET /mandates/{mandate_id}</code>.</p>\n","urlObject":{"path":["mandates","sender_account"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"091bd658-bbf2-43ae-b2fc-3740443ce9b6","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"3a76a99f-0d16-46cb-8bb1-227456f8972d","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"mandate_details\": {\n        \"currency\": \"{{mandate_currency}}\",\n        \"description\": \"Test Mandate\",\n        \"end_date\": \"2024-03-01\",\n        \"start_date\": \"{{today}}\",\n        \"transaction_limits\": {\n            \"max_period_amount\": 10000,\n            \"max_period_count\": 10,\n            \"max_transaction_amount\": {{max_trx_amount_in_minor}},\n            \"period\": \"MONTHLY\"\n        }\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"contact_finverse_support\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"{{existing_sender_account_id}}\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/sender_account"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1696433625"},{"key":"Date","value":"Wed, 04 Oct 2023 15:33:45 GMT"},{"key":"Content-Length","value":"1127"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"fees\": [],\n    \"mandate_details\": {\n        \"currency\": \"HKD\",\n        \"description\": \"Test Mandate\",\n        \"end_date\": \"2024-03-01\",\n        \"start_date\": \"2023-10-05\",\n        \"transaction_limits\": {\n            \"max_period_amount\": 10000,\n            \"max_period_count\": 10,\n            \"max_transaction_amount\": 10000,\n            \"period\": \"MONTHLY\"\n        }\n    },\n    \"mandate_id\": \"01HBZ2K7Y2B7C7TDM7C3BBBZCG\",\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"payment_method_id\": \"01HJ5XHPFR9SDAPZ0Y143R6XCF\",\n    \"recipient\": {\n        \"name\": \"John Doe\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01GMC9RSPCHAJ9ER9A4JR4AP6X\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"unique_user_id_1695719460\",\n        \"name\": \"John Doe\",\n        \"user_details\": [\n            {\n                \"details_type\": \"HK_ID\",\n                \"values\": [\n                    \"01HB8C32WGQNSP3MMN4P49YT70\"\n                ]\n            }\n        ],\n        \"user_id\": \"01HB8C32TD4V1RSB1HCZREXVMH\",\n        \"user_type\": \"INDIVIDUAL\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"01HBA46Z9JVR54MWR0YDEZX3XK\",\n        \"account_number\": {\n            \"number\": \"01HBA46ZEA306KKDPVE80MYME5\",\n            \"type\": \"LOCAL\"\n        },\n        \"account_number_masked\": \"132XXXXXXXX4343\",\n        \"account_type\": \"EXTERNAL_ACCOUNT\",\n        \"accountholder_name\": \"01HBA46ZFFKHXQ4F60HRGH9HF4\",\n        \"institution_id\": \"testbank-dbs-hk\",\n        \"user_id\": \"01HB8C32TD4V1RSB1HCZREXVMH\"\n    },\n    \"status\": \"AUTHORIZATION_REQUIRED\",\n    \"updated_at\": \"2023-10-05T04:47:35.447Z\"\n}"},{"id":"2cd29bd7-9c09-4a03-85ae-866b0a8b65fb","name":"Error (invalid Sender Account)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"3370e5eb-2250-4b41-b42f-368f19cc5b86","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"mandate_details\": {\n        \"currency\": \"{{mandate_currency}}\",\n        \"description\": \"Test Mandate\",\n        \"end_date\": \"2024-03-01\",\n        \"start_date\": \"{{today}}\",\n        \"transaction_limits\": {\n            \"max_period_amount\": 10000,\n            \"max_period_count\": 10,\n            \"max_transaction_amount\": {{max_trx_amount_in_minor}},\n            \"period\": \"MONTHLY\"\n        }\n    },\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"contact_finverse_support\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"{{existing_sender_account_id}}2\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/sender_account"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1696433729"},{"key":"Date","value":"Wed, 04 Oct 2023 15:35:29 GMT"},{"key":"Content-Length","value":"270"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"Invalid sender_account.account_id value. Verify your account_id.\",\n        \"error_code\": \"INVALID_INPUT\",\n        \"message\": \"Invalid parameter value(s). Please review parameter inputs.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"fd5e404f-f011-4734-b3df-c8cab39447f4"},{"name":"/mandates/{id}","event":[{"listen":"test","script":{"id":"59a61021-132a-436d-a90d-ff1a907d31cd","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.status) {","    console.log(\"Mandate status:\", jsonData.status)","};","","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Mandate Status or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"status\",","        \"error\"","    )","});","","//Mandate Status is not FAILED","pm.test(\"Mandate Status is not FAILED\", function() {","    pm.expect(jsonData.status).to.not.equal(\"FAILED\")","});","","//Mandate Status is not SUBMITTED with retryable error object ","    //(this means Mandate submission failed due to a temporary error and will be retried)","if(jsonData.status === \"SUBMITTED\") {","    pm.test(\"Mandate Status is not SUBMITTED with retryable error object\", function() {","        pm.expect(jsonData).to.not.have.any.keys(\"error\")","    })","};","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"created_at\": {\"type\":\"string\"},  ","            \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"type\"","                ]","            },","            \"fees\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"amount\": {\"type\":\"integer\"},","                        \"currency\": {\"type\":\"string\"},","                        \"paid_by\": {","                            \"type\":\"string\",","                            \"enum\": [\"RECIPIENT\", \"SENDER\"]","                        },","                        \"paid_by_account_id\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"amount\", ","                        \"currency\", ","                        \"paid_by\", ","                        \"paid_by_account_id\"","                    ]","                }","            },","            \"mandate_details\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"collection_entity_name\": {\"type\":\"string\"},","                    \"currency\": {\"type\":\"string\"},","                    \"dda_reference\": {\"type\":\"string\"},","                    \"description\": {\"type\":\"string\"},","                    \"end_date\": {\"type\":\"string\"},","                    \"mandate_bank_reference\": {\"type\":\"string\"},","                    \"payment_schedule\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"amount\": {\"type\":\"integer\"},","                            \"frequency\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"amount\",","                            \"frequency\"","                        ]","                    },","                    \"processor_entity_name\": {\"type\":\"string\"},","                    \"start_date\": {\"type\":\"string\"},","                    \"transaction_limits\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"max_period_amount\": {\"type\":\"integer\"},","                            \"max_period_count\": {\"type\":\"integer\"},","                            \"max_transaction_amount\": {\"type\":\"integer\"},","                            \"max_transaction_amount_set_by_payer_initial\": {\"type\":\"integer\"},","                            \"period\": {\"type\":\"string\"}","                        },","                        \"required\": [ ]","                    }","                },","                \"required\": [","                    \"currency\",","                    \"description\"","                ]","            },","            \"mandate_id\": {\"type\":\"string\"},","            \"metadata\": {\"type\":\"object\"},","            \"payment_method_id\": {\"type\":\"string\"},","            \"recipient\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"name\": {\"type\":\"string\"}","                },","                \"required\": [","                    \"name\"","                ]","            },","            \"recipient_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    },","                    \"name\": {\"type\":\"string\"}","                },","                \"required\": [","                    \"account_id\",","                    \"account_type\"","                ]","            },","            \"sender\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"external_user_id\": {\"type\":\"string\"},","                    \"name\": {\"type\":\"string\"},","                    \"user_details\": {","                        \"type\":[\"array\",\"null\"],","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                },","                                \"values\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"type\": \"string\"","                                    }","                                }","                            },","                            \"required\": [","                                \"details_type\",","                                \"values\"","                            ]","                        }","                    },","                    \"user_id\": {\"type\":\"string\"},","                    \"user_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                    }","                },","                \"required\": [","                    \"external_user_id\",","                    //\"name\", // TO BE ENFORCED","                    \"user_id\",","                    \"user_type\"","                ]","            },","            \"sender_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_number\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"number\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"IBAN\", \"LOCAL\"]","                            }","                        },","                        \"required\": [","                            \"number\",","                            \"type\"","                        ]","                    },","                    \"account_number_masked\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    },","                    \"accountholder_name\": {\"type\":\"string\"},","                    \"bank_code\": {\"type\":\"string\"},","                    \"institution_id\": {\"type\":\"string\"},","                    \"institution_name\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                },","                \"required\": [","                    \"account_type\",","                    \"user_id\"","                ]","            },","            \"status\": {","                \"type\":\"string\",","                \"enum\": [\"AUTHORIZATION_REQUIRED\", \"CLOSED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"FAILED\"]","            },","            \"updated_at\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"created_at\",","            \"fees\",","            \"mandate_details\",","            \"mandate_id\",","            \"payment_method_id\",","            \"recipient\",","            \"sender\",","            \"status\",","            \"updated_at\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","","//POSTMAN COLLECTION ROUTING LOGIC","//Set next request based on Mandate status","if(jsonData.status === \"AUTHORIZATION_REQUIRED\") {","//    pm.execution.setNextRequest(\"/mandates/link (Generate link_token and link_url)\") //Make next request: \"Generate link_token and link_url\"","    pm.execution.setNextRequest(\"/mandates/link (Generate link_url)\") //Make next request: \"Generate link_url\"","    console.log(\"Mandate authorization required. Next step: Authorize mandate\");","};","","if(jsonData.status === \"SUCCEEDED\") {","    pm.execution.setNextRequest(\"/payments (Create Payment)\") //Make next request: \"Create Payment\"","    console.log(\"Mandate succeeded. Next step: Create Payment\");","    ","    //Mandate Status is SUCCEEDED (test will always pass)","    pm.test(\"Mandate Status is SUCCEEDED\", function() {","        pm.expect(jsonData.status).to.equal(\"SUCCEEDED\")","    })","};","","if(jsonData.status === \"READY_TO_SUBMIT\" || jsonData.status === \"PROCESSING\" || jsonData.status === \"SUBMITTED\") { ","    //Count loops through Mandate status check if mandate is PROCESSING or SUBMITTED","    if (pm.variables.get(\"mandate_status_loop_number\") >= 1) {","        var i = Number(pm.variables.get(\"mandate_status_loop_number\")) + 1","    }","    else {","        var i = 1","    };","    pm.environment.set(\"mandate_status_loop_number\", i);","","    //Set next request based on loop count","    if (i<=5) {","        console.log(\"Checking Mandate status: Attempt\", i);","        pm.execution.setNextRequest(\"/mandates/{mandate_id}\") //Make next request: \"Get Mandate\"","","        if (jsonData.status===\"READY_TO_SUBMIT\") {","            console.log(\"Mandate is ready to submit. Next step: Retrieve Mandate status\");","            var timerLength = 5000;","        };","","        if (jsonData.status===\"PROCESSING\") {","            console.log(\"Mandate processing. Next step: Retrieve Mandate status\");","            var timerLength = 5000;","        };","","        if (jsonData.status===\"SUBMITTED\") {","            console.log(\"Mandate submitted. Next step: Retrieve Mandate status\");","            var timerLength = 5000;","        };","","        if (timerLength) {","            console.log(\"Timer set to:\", timerLength, \"ms\")","            setTimeout(function(){}, timerLength)","        };","    }","    else {","        pm.environment.clear(\"mandate_status_loop_number\");","        pm.execution.setNextRequest(null); // Next step: end Collection run","        console.log(\"Mandate still pending (READY_TO_SUBMIT, PROCESSING or SUBMITTED) after 5 status checks. Next step: End collection run\");","        ","        //Mandate Status is SUCCEEDED (test will always fail)","        pm.test(\"Mandate Status is SUCCEEDED\", function() {","            pm.expect(jsonData.status).to.equal(\"SUCCEEDED\")","        });","    };","","};","//POSTMAN COLLECTION ROUTING LOGIC - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"2c7dee1e-b8a3-4916-b191-b1a8bdbad90c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"body":{"mode":"raw","raw":""},"url":"https://api.prod.finverse.net/mandates/{{mandate_id}}","description":"<p>Retrieve a Mandate object (using a specific <code>mandate_id</code>).</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"response-fields\">Response fields</h2>\n<p>Single <code>Mandate</code> object, containing information on the Mandate.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>created_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp when the mandate was first created</td>\n</tr>\n<tr>\n<td>error</td>\n<td>Finverse standard <code>error</code> object, optional</td>\n<td>Details on why the mandate failed (returned when <code>status</code> = <code>FAILED</code>). Note: this is used to detail any asynchronous e errors occuring after mandate creation; any synchronous errors (e.g. API validation errors) will instead be returned directly during <code>POST /mandates</code>.</td>\n</tr>\n<tr>\n<td>fees</td>\n<td>array</td>\n<td>Details on the fee(s) to be charged. See below.</td>\n</tr>\n<tr>\n<td>mandate_details</td>\n<td>object</td>\n<td>Details on the mandate. See below.</td>\n</tr>\n<tr>\n<td>mandate_id</td>\n<td>string (ULID)</td>\n<td>Finverse Mandate ID for this mandate. Always unique. Creating a mandate with different idempotency keys will result in two mandates with different IDs.</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format. E.g. <code>employer_name</code>: <code>Apple Inc</code></td>\n</tr>\n<tr>\n<td>payment_method_id</td>\n<td>string (ULID)</td>\n<td>Finverse Payment Method ID for this mandate, used to create payments using the mandate (see <code>POST /</code>payments).  <br />  <br />Always unique. Creating a mandate with different idempotency keys will result in two mandates with different IDs.</td>\n</tr>\n<tr>\n<td>recipient</td>\n<td>object</td>\n<td>Details on the recipient of the payment. See below.</td>\n</tr>\n<tr>\n<td>recipient_account</td>\n<td>object</td>\n<td>Details on the recipient's account for the payment (i.e. the Customer App's settlement account at Finverse). See below.</td>\n</tr>\n<tr>\n<td>sender</td>\n<td>object</td>\n<td>Details on the sender of the payment. See below.</td>\n</tr>\n<tr>\n<td>sender_account</td>\n<td>object, optional</td>\n<td>Details on the sender's source institution and account, which is funding the payment. See below.</td>\n</tr>\n<tr>\n<td>status</td>\n<td>string ENUM</td>\n<td>Current status of the mandate. Possible values: <code>AUTHORIZATION_REQUIRED</code>, <code>PROCESSING</code>, <code>READY_TO_SUBMIT</code>, <code>SUBMITTED</code>, <code>SUCCEEDED</code>, <code>CANCELLED</code>, <code>CLOSED</code>, <code>FAILED</code>  <br />  <br />Note: <code>CLOSED</code> occurs when a draft Mandate is created by a Finverse Payment Link (with status <code>AUTHORIZATION_REQUIRED</code>), and the user then drops-off or creates a new Payment Method or Mandate. In these cases, Finverse closes the draft Mandate in order to associate a new Payment Method / Mandate with the same Payment Link.</td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last update to the mandate's record</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"fees-array\">fees (array)</h3>\n<p>Details on the fee(s) to be charged. Returns an empty array if no fees will be charged.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>amount</td>\n<td>integer (ISO 4217 \"minor\" currency unit)</td>\n<td>Amount of the fee (in minor currency unit)</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code)</td>\n<td>Currency of the fee (e.g. HKD)</td>\n</tr>\n<tr>\n<td>paid_by</td>\n<td>string ENUM</td>\n<td>Party who will be charged the fee. Possible values: <code>RECIPIENT</code>, <code>SENDER</code></td>\n</tr>\n<tr>\n<td>paid_by_account_id</td>\n<td>string (ULID)</td>\n<td>Finverse Payment Account ID of the party who will be charged the fee. This references the <code>account_id</code> of either the <code>recipient_account</code> or the <code>sender_account</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"mandate_details-object\">mandate_details (object)</h3>\n<p>Details describing the mandate.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>collection_entity_name</td>\n<td>string, optional</td>\n<td>Name of the legal entity directly collecting the payment. This name may be displayed to users in the Finverse UI and in email notifications and in the sender's bank statements.  <br />  <br />For direct debit payments directly collected by the merchant (e.g. SG eGIRO payments), <code>collection_entity_name</code> is typically the merchant's legal entity name, configured by Finverse during customer onboarding. Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> to configure your merchant details.  <br />  <br />For direct debit payments collected through Finverse (e.g. HK eDDA payments), <code>collection_entity_name</code> will be the same as <code>processor_entity_name</code> (see below).</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code)</td>\n<td>Currency of the mandate (e.g. HKD)</td>\n</tr>\n<tr>\n<td>dda_reference</td>\n<td>string</td>\n<td>Unique reference ID for the Direct Debit Authorization registered with the user's bank.  <br />  <br />The user's bank may quote this reference in notifications to the user, and in direct debit payment records on the user's bank statements.</td>\n</tr>\n<tr>\n<td>description</td>\n<td>string</td>\n<td>User-facing description for the mandate</td>\n</tr>\n<tr>\n<td>end_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>Expiration date of the mandate, e.g. <code>2022-12-31</code>. Payment requests will be allowed up to this date (inclusive). All date inputs assume UTC times (e.g. if <code>end_date</code> = <code>2022-12-31</code>, then a payment will be allowed until 2022-12-31 at 23:59:59 UTC). <code>end_date</code> must be equal to or greater than <code>start_date</code> (in UTC).</td>\n</tr>\n<tr>\n<td>mandate_bank_reference</td>\n<td>string, optional</td>\n<td>Bank-generated reference for the mandate, usually shown to senders on their bank notifications or statements. Only returned once mandate has been processed successfully by the sender's bank (i.e. mandate <code>status</code>= <code>SUCCESSFUL</code>).</td>\n</tr>\n<tr>\n<td>processor_entity_name</td>\n<td>string, optional</td>\n<td>Name of the payment processor (if any) through which the payment is collected. This name may be displayed to users in the Finverse UI, in email notifications and in the sender's bank statements.  <br />  <br />For direct debit payments directly collected by the merchant (e.g. SG eGIRO payments), no <code>processor_entity_name</code> is returned.  <br />  <br />For direct debit payments collected through Finverse (e.g. HK eDDA payments), <code>processor_entity_name</code> will be Finverse's legal entity name.</td>\n</tr>\n<tr>\n<td>payment_schedule</td>\n<td>object, optional</td>\n<td>RESERVED FOR FUTURE USE - Specifies scheduled auto-payments. See below.</td>\n</tr>\n<tr>\n<td>start_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>Start date of the mandate, e.g. <code>2022-06-01</code>. Payment requests will be allowed from this date onwards (inclusive). All date inputs assume UTC times (e.g. if <code>start_date</code> = <code>2022-06-01</code>, then a payment will be allowed starting from 2022-06-01 at 00:00:00 UTC). <code>start_date</code> must be equal to or greater than today's date (in UTC).</td>\n</tr>\n<tr>\n<td>transaction_limits</td>\n<td>object, optional</td>\n<td>Specifies custom limits per payment transaction. See below.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment_schedule-object-optional\">payment_schedule (object, optional)</h3>\n<p>RESERVED FOR FUTURE USE - Specifies scheduled auto-payments with the specified amounts and dates.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>amount</td>\n<td>integer</td>\n<td>Amount of the scheduled payment in major currency</td>\n</tr>\n<tr>\n<td>frequency</td>\n<td>string ENUM</td>\n<td>Frequency of the scheduled payment. Possible values: <code>DAILY</code>, <code>WEEKLY</code>, <code>MONTHLY</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"transaction_limits-object-optional\">transaction_limits (object, optional)</h3>\n<p>Specifies custom limits on payment transactions executed under the Mandate.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>max_period_amount</td>\n<td>integer, optional</td>\n<td>Maximum cumulative amount (in minor currency unit) of payment transactions (for the specified <code>period</code> unit)</td>\n</tr>\n<tr>\n<td>max_period_count</td>\n<td>integer, optional</td>\n<td>Maximum number of payment transactions (for the specified <code>period</code> unit)</td>\n</tr>\n<tr>\n<td>max_transaction_amount</td>\n<td>integer, optional</td>\n<td>Maximum amount per single payment transaction, set by your Customer App (in minor currency units).  <br />  <br />Note: to avoid your Customer App triggering over-limit payments, Finverse will block any <code>POST /payments</code> requests exceeding the <code>max_transaction_amount</code>  <br />Banks may separately apply their own per transaction limit (see <code>max_transaction_amount_set_by_payer_initial</code> below)</td>\n</tr>\n<tr>\n<td>max_transaction_amount_set_by_payer_initial</td>\n<td>integer, optional</td>\n<td>Maximum amount per single payment transaction, optionally set by the end-user at the time of direct debit mandate creation, e.g. for eGIRO in Singapore (in minor currency units).  <br />  <br />Note: Finverse will attempt to submit <code>POST /payments</code> requests to banks even when the payment amount exceeds this limit, however you should expect the end-user's bank will reject over-limit payemnt requests, unless the user directly updates their limit through their bank (e.g. through their bank's internet banking portal &gt; eGIRO management page).  <br />  <br />Finverse separately applies its own per transaction limit (see <code>max_transaction_limit</code> above)</td>\n</tr>\n<tr>\n<td>period</td>\n<td>string ENUM, optional</td>\n<td>Returned if <code>max_period_amount</code> or <code>max_period_count</code> are set.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"recipient-object-sender-object\">recipient (object), sender (object)</h3>\n<p>The recipient and sender objects include a Payment User object for each of the counterparties of a payment. Refer to the Payment User data model in <code>GET /payment_users/{payment_user_id}</code> for details on the Payment User object.</p>\n<p>Note: Some Payment User metadata fields are omitted for clarity (e.g. <code>created_at</code>, <code>metadata</code>, <code>updated_at</code>).</p>\n<h3 id=\"recipient_account-object-sender_account-object\">recipient_account (object), sender_account (object)</h3>\n<p>The recipient_account and sender_account objects include a Payment Account object for each of the counterparties of a payment. Refer to Payment Account object data model in <code>GET /payment_users/{user_id}/payment_accounts</code> for details on the Payment Account object.</p>\n<p>Note: Some Payment Account metadata fields are omitted for clarity (e.g. <code>created_at</code>, <code>metadata</code>, <code>updated_at</code>).</p>\n","urlObject":{"path":["mandates","{{mandate_id}}"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"d20aa7f5-6df3-497e-ace0-beca8e601683","name":"Success (authorization required)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://api.prod.finverse.net/mandates/{{mandate_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1711638405"},{"key":"Date","value":"Thu, 28 Mar 2024 15:06:45 GMT"},{"key":"Content-Length","value":"847"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"created_at\": \"2024-03-28T15:06:10.744Z\",\n    \"fees\": [],\n    \"mandate_details\": {\n        \"currency\": \"HKD\",\n        \"description\": \"Test Mandate\",\n        \"end_date\": \"2024-12-01\",\n        \"start_date\": \"2024-03-28\",\n        \"transaction_limits\": {\n            \"max_period_amount\": 10000,\n            \"max_period_count\": 10,\n            \"max_transaction_amount\": 10000,\n            \"period\": \"MONTHLY\"\n        }\n    },\n    \"mandate_id\": \"01HT2SHP6DQJ3A4MTR6V5RVDYR\",\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"payment_method_id\": \"01HT2SHPDAFZCHPVCDJ2Z99GX8\",\n    \"recipient\": {\n        \"name\": \"Demo App\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"user_id_1\",\n        \"name\": \"John Doe\",\n        \"user_details\": [\n            {\n                \"details_type\": \"HK_ID\",\n                \"values\": [\n                    \"01HT2SHPCXQNGDGEHTHXTKAB90\"\n                ]\n            }\n        ],\n        \"user_id\": \"01GWKTK0380NBRCV1B8D6N0SEH\",\n        \"user_type\": \"INDIVIDUAL\"\n    },\n    \"status\": \"AUTHORIZATION_REQUIRED\",\n    \"updated_at\": \"2024-03-28T15:06:10.730Z\"\n}"},{"id":"9af1461c-0812-46b0-888d-2f3198d8e1ff","name":"Success (succeeded)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://api.prod.finverse.net/mandates/{{mandate_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1711638250"},{"key":"Date","value":"Thu, 28 Mar 2024 15:04:10 GMT"},{"key":"Content-Length","value":"1202"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"created_at\": \"2024-03-28T15:04:04.365Z\",\n    \"fees\": [],\n    \"mandate_details\": {\n        \"collection_entity_name\": \"Finverse Technologies Limited\",\n        \"currency\": \"HKD\",\n        \"description\": \"Test Mandate\",\n        \"end_date\": \"2024-12-01\",\n        \"mandate_bank_reference\": \"FV TEAM-MTEW-FV T\",\n        \"processor_entity_name\": \"Finverse Technologies Limited\",\n        \"start_date\": \"2024-03-28\",\n        \"transaction_limits\": {\n            \"max_period_amount\": 10000,\n            \"max_period_count\": 10,\n            \"max_transaction_amount\": 10000,\n            \"max_transaction_amount_set_by_payer_initial\": 5000,\n            \"period\": \"MONTHLY\"\n        }\n    },\n    \"mandate_id\": \"01HT2SD8F1CRVSNFCR3R4TD18K\",\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"payment_method_id\": \"01HT2SD8NZK60YGMM95AFFJV79\",\n    \"recipient\": {\n        \"name\": \"Demo App\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"user_id_1\",\n        \"name\": \"John Doe\",\n        \"user_details\": [\n            {\n                \"details_type\": \"HK_ID\",\n                \"values\": [\n                    \"01HT2SD8NAETR9JYRNYFZZPECD\"\n                ]\n            }\n        ],\n        \"user_id\": \"01GWKTK0380NBRCV1B8D6N0SEH\",\n        \"user_type\": \"INDIVIDUAL\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"01HT2SDPDBS8E1RGB8MQAN3EV7\",\n        \"account_number\": {\n            \"number\": \"01HT2SDPK97FE80V0Q1NQBZ562\",\n            \"type\": \"LOCAL\"\n        },\n        \"account_number_masked\": \"XXX45\",\n        \"account_type\": \"EXTERNAL_ACCOUNT\",\n        \"accountholder_name\": \"01HT2SDPJ3CHRZNX5EBTAERVFF\",\n        \"institution_id\": \"testbank-dbs-hk\",\n        \"institution_name\": \"Testbank (HK) Payments - Personal\",\n        \"user_id\": \"01GWKTK0380NBRCV1B8D6N0SEH\"\n    },\n    \"status\": \"SUCCEEDED\",\n    \"updated_at\": \"2024-03-28T15:04:02.660Z\"\n}"},{"id":"2566f14b-2b5a-4035-9b78-de13d7a5f5ca","name":"Error (mandate not found)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://api.prod.finverse.net/mandates/{{mandate_id}}2"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"01GKRZR8PR3QECGF21P5AGHPGH-1677761354"},{"key":"Date","value":"Thu, 02 Mar 2023 12:49:14 GMT"},{"key":"Content-Length","value":"254"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"mandate_id not found\",\n        \"error_code\": \"RESOURCE_NOT_FOUND\",\n        \"message\": \"Resource cannot be found. Resource does not exist, has been deleted, or is not accessible.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"6c4b7b0d-6922-4f05-9dd9-83e5a819273b","name":"Error (mandate blocked)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://api.prod.finverse.net/mandates/{{mandate_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Wed, 30 Nov 2022 02:02:04 GMT"},{"key":"Content-Length","value":"955"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"fees\": [],\n    \"error\": {\n        \"code\": \"PAYMENT_BLOCKED\",\n        \"details\": \"Sender details do not match expected values. Please try again or contact customer support.\",\n        \"error_code\": \"PAYMENT_BLOCKED\",\n        \"message\": \"Authorization failed\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"PAYMENT_ERROR\"\n    },\n    \"mandate_details\": {\n        \"currency\": \"HKD\",\n        \"description\": \"Test Mandate\",\n        \"end_date\": \"2022-12-31\",\n        \"start_date\": \"2022-11-30\",\n        \"transaction_limits\": {\n            \"max_period_amount\": 100000,\n            \"max_period_count\": 10,\n            \"max_transaction_amount\": 100000,\n            \"period\": \"MONTHLY\"\n        }\n    },\n    \"mandate_id\": \"01GK3440YH7YBX39TEEVKFBK6W\",\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"recipient\": {\n        \"name\": \"Demo App\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01GAFWD2KCVSPSR4P7GPKS3F8M\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"user_id_1\",\n        \"name\": \"John Doe\",\n        \"user_details\": [\n            {\n                \"details_type\": \"HK_ID\",\n                \"values\": [\n                    \"01GY2MSEDB1GBP1BA5H31CSEWF\"\n                ]\n            }\n        ],\n        \"user_id\": \"01GWKTM24X8PFF0QY4M3ABE4D3\",\n        \"user_type\": \"INDIVIDUAL\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"01GY2MPZ7RV4FPB6D21G554WY8\",\n        \"account_number\": {\n            \"number\": \"01GY2MPZE8XTVNQ5119SNMKGS1\",\n            \"type\": \"LOCAL\"\n        },\n        \"account_type\": \"EXTERNAL_ACCOUNT\",\n        \"accountholder_name\": \"01GY2MPZDA2A75CA682XWNGVSZ\",\n        \"institution_id\": \"testbank-dbs-hk\",\n        \"user_id\": \"01GWKTM24X8PFF0QY4M3ABE4D3\"\n    },\n    \"status\": \"FAILED\",\n    \"updated_at\": \"2022-11-30T01:59:51.069Z\"\n}"},{"id":"0aa6ec20-e085-4139-ad00-1971aa89640c","name":"Error (sender account details invalid)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://api.prod.finverse.net/mandates/{{mandate_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Sat, 03 Dec 2022 04:42:29 GMT"},{"key":"Content-Length","value":"873"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"fees\": [],\n    \"error\": {\n        \"code\": \"MANDATE_SENDER_ACCOUNT_INCORRECT\",\n        \"details\": \"\",\n        \"error_code\": \"MANDATE_SENDER_ACCOUNT_INCORRECT\",\n        \"message\": \"The sender's account is incorrect.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"PAYMENT_ERROR\"\n    },\n    \"mandate_details\": {\n        \"currency\": \"HKD\",\n        \"description\": \"Test Mandate\",\n        \"end_date\": \"2023-03-01\",\n        \"start_date\": \"2022-12-03\",\n        \"transaction_limits\": {\n            \"max_period_amount\": 100000,\n            \"max_period_count\": 10,\n            \"max_transaction_amount\": 100000,\n            \"period\": \"MONTHLY\"\n        }\n    },\n    \"mandate_id\": \"01GK3440YH7YBX39TEEVKFBK6W\",\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"recipient\": {\n        \"name\": \"Demo App\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01GAFWD2KCVSPSR4P7GPKS3F8M\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"user_id_1\",\n        \"name\": \"John Doe\",\n        \"user_details\": [\n            {\n                \"details_type\": \"HK_ID\",\n                \"values\": [\n                    \"01GY2MSEDB1GBP1BA5H31CSEWF\"\n                ]\n            }\n        ],\n        \"user_id\": \"01GWKTM24X8PFF0QY4M3ABE4D3\",\n        \"user_type\": \"INDIVIDUAL\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"01GY2MPZ7RV4FPB6D21G554WY8\",\n        \"account_number\": {\n            \"number\": \"01GY2MPZE8XTVNQ5119SNMKGS1\",\n            \"type\": \"LOCAL\"\n        },\n        \"account_type\": \"EXTERNAL_ACCOUNT\",\n        \"accountholder_name\": \"01GY2MPZDA2A75CA682XWNGVSZ\",\n        \"institution_id\": \"testbank-dbs-hk\",\n        \"user_id\": \"01GWKTM24X8PFF0QY4M3ABE4D3\"\n    },\n    \"status\": \"FAILED\",\n    \"updated_at\": \"2022-12-03T04:38:03.139Z\"\n}"}],"_postman_id":"2c7dee1e-b8a3-4916-b191-b1a8bdbad90c"}],"id":"a02a85f2-50c4-44e5-b2ed-539e0d5acb25","_postman_id":"a02a85f2-50c4-44e5-b2ed-539e0d5acb25","description":""},{"name":"02a - Authorize Mandate via Finverse Link UI (in browser)","item":[{"name":"/mandates/link (Generate link_url)","event":[{"listen":"test","script":{"id":"7284d6da-9789-4c78-9335-0c5fd6f7d136","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if(jsonData.access_token) {","    pm.environment.set(\"link_token\", jsonData.access_token)","    pm.environment.set(\"link_url\", jsonData.link_url)","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Access Token or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"access_token\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"access_token\": {\"type\":\"string\"},","            \"expires_in\": {\"type\":\"integer\"}, ","            // \"issued_at\": {\"type\":\"integer\"}, // NOT YET ENFORCED","            \"link_url\": {\"type\":\"string\"},","            \"token_type\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"access_token\",","            \"expires_in\",","            // \"issued_at\", // NOT YET ENFORCED","            \"link_url\",","            \"token_type\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","//POSTMAN COLLECTION ROUTING LOGIC","//pm.execution.setNextRequest(\"/mandates/link (Generate link_token and link_url)\") //Make next request: \"Generate link_token\"","//console.log(\"Next step: Authorize Mandate\")","//POSTMAN COLLECTION ROUTING LOGIC - END"],"type":"text/javascript","packages":{}}}],"id":"1e386645-0db0-486c-8dc8-641ed1d52c02","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","type":"text","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"body":{"mode":"raw","raw":"{\n    \"mandate_id\": \"{{mandate_id}}\",\n    \"link_customizations\": {\n        \"countries\": [],\n        \"institution_id\": \"\",\n        \"institution_status\": \"\",\n        \"language\": \"\",\n        \"link_mode\": \"\",\n        \"redirect_uri\": \"\",\n        \"ui_mode\": \"\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/link","description":"<p>Generate a short-lived Finverse Link URL (link_url) and access_token (referred to as <code>link_token</code>) to open the Finverse Link UI (in Mandate mode) in a browser window to allow an End-User to authorize the Mandate. The link_token is associated with a specific Customer App (client_id) and End-User (user_id), and expires after 60 minutes (resend request to renew).</p>\n<p><strong>Authorization</strong>: <code>customer_token</code>.</p>\n<h1 id=\"request-parameters\">Request parameters</h1>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>mandate_id</td>\n<td>string, required</td>\n<td>Mandate ID of the Mandate to be authorized (created via <code>POST /mandates</code>).</td>\n</tr>\n<tr>\n<td>link_customizations</td>\n<td>object, required</td>\n<td>Parameters to customize the behaviour of Finverse Link's UI to fit your implementation requirements. See below.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"link_customizations-object-required\">link_customizations (object, required)</h3>\n<h4 id=\"required-parameters-for-link_customizations\">Required parameters for <code>link_customizations</code></h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>products_supported</td>\n<td>array of strings, required</td>\n<td>Filters the \"Select Institution\" screen in the Finverse Link UI to only list institutions which support the specified products. If left empty, all institutions are listed (including institutions which do not support Mandates/Payments).  <br />  <br /><strong>Required value</strong>: [\"PAYMENTS\"] for Mandate and Payments modes.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"optional-parameters-for-link_customizations\">Optional parameters for <code>link_customizations</code></h4>\n<p>You can use the following optional parameters to customize the behaviour of Finverse Link's UI to fit your implementation requirements.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>countries</td>\n<td>JSON array (3-letter ISO-3166-1 Alpha-3 codes), optional</td>\n<td>Filters \"Select Institution\" screen in Finverse Link UI to only list institutions from the specified countries. If empty, all institutions are listed.  <br />  <br />E.g. <code>[\"SGP\", \"VNM\"]</code>  <br />  <br /><strong>Recommended value</strong>: []</td>\n</tr>\n<tr>\n<td>institution_id</td>\n<td>string, optional</td>\n<td>Instructs Finverse Link UI to skip the institution selection screen (after the consent screen).  <br />  <br /><strong>Accepted values</strong>: A single institution's <code>institution_id</code> (see <code>GET /institutions</code>).  <br />  <br /><strong>Recommended Value</strong>: \"\"</td>\n</tr>\n<tr>\n<td>institution_status</td>\n<td>string (space-separated list), optional</td>\n<td>Specifies which institutions to list in the Finverse Link UI based on their reliability status. If empty, only supported institutions are listed.  <br />  <br />E.g. <code>\"beta supported\"</code>  <br />  <br /><strong>Recommended value</strong>: \"\"</td>\n</tr>\n<tr>\n<td>language</td>\n<td>string (2-letter ISO 639-1 alpha-2 code), optional</td>\n<td>Desired language selection for Finverse Link UI.  <br />  <br />If empty or if an unsupported language is specified, Finverse Link will display the default language.  <br />  <br />Users can manually override the language selection on the 1st Finverse Link screen.  <br />  <br />Supported languages: <code>en</code> (default), <code>vn</code>, <code>zh</code>  <br />  <br /><strong>Recommended Value</strong>: any</td>\n</tr>\n<tr>\n<td>link_mode</td>\n<td>string (space-separated list), optional</td>\n<td>Specifies whether to display specific sets of institutions (e.g. test institutions) in the Finverse Link UI. This can be helpful for testing purposes.  <br />  <br />E.g. <code>\"real test\"</code>  <br />  <br /><strong>Accepted values</strong>:  <br />- <code>real</code> : show only real banks (default for live apps)  <br />- <code>test</code> : show only testbanks  <br />- <code>real test</code> shows both real banks &amp; testbanks (default for test apps)  <br />  <br /><strong>Recommended value</strong>: \"\"</td>\n</tr>\n<tr>\n<td>redirect_uri</td>\n<td>string, optional</td>\n<td>Required when <code>ui_mode</code> = <code>redirect</code>.  <br />  <br />When <code>ui_mode</code> = <code>redirect</code>, the Finverse Link UI will redirect to this uri after success, failure or when user exits the UI.  <br />  <br />Uri must be one of the redirect_uri values registered by customer under \"API settings\" in Finverse developer dashboard (dashboard.finverse.com).</td>\n</tr>\n<tr>\n<td>ui_mode</td>\n<td>string ENUM, optional</td>\n<td>Specifies the behaviour of the Finverse Link UI upon completion of the authorization flow (in both success or error cases). If left empty, Finverse Link will default to <code>standalone</code> behaviour for both the Payment Links and Mandates UI.  <br />  <br /><strong>Accepted values</strong>:  <br />- <code>redirect</code>: for when Finverse Link UI is launched as a window/webview embedded within the customer's application. Finverse will display an Exit (\"X\") button on each screen and a \"Continue\" button on final success/error screens, each redirecting to the specified <code>redirect_uri</code>, allowing the user to return to the customer's application.  <br />  <br />- <code>standalone</code>: for when Finverse Link UI is launched in a new window/webview without the need to navigate back to the customer's application. Finverse will display a \"You may close this window now\" message on final success/error screens, guiding the user to manually close the window/webview.  <br />  <br />- <code>iframe</code>: for when Finverse Link UI is launched as an iframe/webview embedded within the customer's application. Finverse will display an Exit (\"X\") button on each screen and a \"Continue\" button on final success/error screens, allowing the user to close the iframe/webview and return to the customer's application (requires customer's application to handle iframe/webview messages).  <br />  <br /><strong>Recommended value</strong>: <code>redirect</code> or <code>standalone</code></td>\n</tr>\n</tbody>\n</table>\n</div><h1 id=\"response-fields\">Response fields</h1>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>access_token</td>\n<td>string</td>\n<td>Link session token (referred to as <code>link_token</code>)</td>\n</tr>\n<tr>\n<td>expires_in</td>\n<td>integer</td>\n<td>Token validity length (in seconds)</td>\n</tr>\n<tr>\n<td>issued_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Token issue time</td>\n</tr>\n<tr>\n<td>link_url</td>\n<td>string</td>\n<td>URL to launch the Finverse Link UI flow associated with this <code>link_token</code>, for the end-user to provide required consent and Mandate/Payment inputs.</td>\n</tr>\n<tr>\n<td>token_type</td>\n<td>string ENUM</td>\n<td>Possible values: <code>Bearer</code></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"token-handling\">Token handling</h2>\n<h3 id=\"usage\">Usage</h3>\n<p><code>link_token</code> is intended for use by front-end clients to call Finverse API. It is the only Finverse API token that is considered non-sensitive.</p>\n<h3 id=\"renewal\">Renewal</h3>\n<p><code>link_token</code> expires after 60 minutes.</p>\n<p>Repeat this request for token renewal.</p>\n","urlObject":{"path":["mandates","link"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"6d000774-cea2-4acb-9e4c-2219d7d1f78a","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"mandate_id\": \"{{mandate_id}}\",\n    \"link_customizations\": {\n        \"countries\": [],\n        \"products_supported\": [\"PAYMENTS\"]\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/link"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Tue, 27 Sep 2022 05:50:18 GMT"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"access_token\": \"link_token\",\n    \"expires_in\": 300,\n    \"issued_at\": \"2022-09-01T01:01:00.000Z\",\n    \"link_url\": \"https://link.sandbox.finverse.net/onboarding?mandate_id=ULID&products_supported=PAYMENTStoken=link_token\",\n    \"token_type\": \"Bearer\"\n}"},{"id":"9b6e0642-afb0-4c11-9ee3-c8624e3ff10e","name":"Error (Mandate not found)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"body":{"mode":"raw","raw":"{\n    \"mandate_id\": \"{{mandate_id}}\",\n    \"link_customizations\": {\n        \"countries\": [],\n        \"institution_id\": \"\",\n        \"institution_status\": \"\",\n        \"language\": \"\",\n        \"link_mode\": \"\",\n        \"products_supported\": [\"PAYMENTS\"],\n        \"ui_mode\": \"\",\n        \"user_type\": []\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/link"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Wed, 14 Dec 2022 04:59:54 GMT"},{"key":"Content-Length","value":"251"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"Mandate not found\",\n        \"error_code\": \"RESOURCE_NOT_FOUND\",\n        \"message\": \"Resource cannot be found. Resource does not exist, has been deleted, or is not accessible.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"e50560bf-2ac2-4881-98d9-834e4950fa14","name":"Error (Mandate locked)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"mandate_id\": \"{{mandate_id}}\",\n    \"link_customizations\": {\n        \"countries\": [],\n        \"products_supported\": [\"PAYMENT\"]\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/link"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Tue, 27 Sep 2022 05:57:16 GMT"},{"key":"Content-Length","value":"115"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": \"MANDATE_LOCKED\",\n        \"details\": \"\",\n        \"error_code\": \"MANDATE_LOCKED\",\n        \"message\": \"The mandate cannot be interacted with at the time being because there are other processes underway that requires the mandate to be unchanged.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"PAYMENT_ERROR\"\n    }\n}"}],"_postman_id":"1e386645-0db0-486c-8dc8-641ed1d52c02"},{"name":"Launch Finverse Link UI","id":"c0723479-116f-461d-a9b6-c2de513bb5ea","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"{{link_url}}","description":"<p>Open Finverse Link UI using the link_url generated by POST /link/token. Authentication: link_token. To open the Link UI in browser, either (a) press cmd+click on the link_url response to POST /link/token to launch a new browser window, or (b) copy the URL from this GET request into a browser window (the full URL can be copied from Postman console after first making the GET request)</p>\n","urlObject":{"host":["{{link_url}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"c0723479-116f-461d-a9b6-c2de513bb5ea"}],"id":"8f4408f7-1f38-4879-9372-db7c7037e906","_postman_id":"8f4408f7-1f38-4879-9372-db7c7037e906","description":""},{"name":"02b - Authorize Mandate via API","item":[{"name":"/mandates/{id}/authorize (Authorize Mandate)","event":[{"listen":"test","script":{"id":"da10df2b-24c1-417b-952c-05fe91c3a6b1","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.status) {","    console.log(\"Mandate 2 status:\", jsonData.status)","};","","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Mandate Status or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"status\",","        \"error\"","    )","});","","//Mandate Status is PROCESSING","pm.test(\"Mandate Status is PROCESSING\", function() {","    pm.expect(jsonData.status).to.equal(\"PROCESSING\")","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"created_at\": {\"type\":\"string\"},  ","            \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"type\"","                ]","            },","            \"fees\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"amount\": {\"type\":\"integer\"},","                        \"currency\": {\"type\":\"string\"},","                        \"paid_by\": {","                            \"type\":\"string\",","                            \"enum\": [\"RECIPIENT\", \"SENDER\"]","                        },","                        \"paid_by_account_id\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"amount\", ","                        \"currency\", ","                        \"paid_by\", ","                        \"paid_by_account_id\"","                    ]","                }","            },","            \"mandate_details\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"collection_entity_name\": {\"type\":\"string\"},","                    \"currency\": {\"type\":\"string\"},","                    \"dda_reference\": {\"type\":\"string\"},","                    \"description\": {\"type\":\"string\"},","                    \"end_date\": {\"type\":\"string\"},","                    \"mandate_bank_reference\": {\"type\":\"string\"},","                    \"payment_schedule\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"amount\": {\"type\":\"integer\"},","                            \"frequency\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"amount\",","                            \"frequency\"","                        ]","                    },","                    \"processor_entity_name\": {\"type\":\"string\"},","                    \"start_date\": {\"type\":\"string\"},","                    \"transaction_limits\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"max_period_amount\": {\"type\":\"integer\"},","                            \"max_period_count\": {\"type\":\"integer\"},","                            \"max_transaction_amount\": {\"type\":\"integer\"},","                            \"period\": {\"type\":\"string\"}","                        },","                        \"required\": [ ]","                    }","                },","                \"required\": [","                    \"collection_entity_name\",","                    \"currency\",","                    \"description\"","                ]","            },","            \"mandate_id\": {\"type\":\"string\"},","            \"metadata\": {\"type\":\"object\"},","            \"payment_method_id\": {\"type\":\"string\"},","            \"recipient\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"name\": {\"type\":\"string\"}","                },","                \"required\": [","                    \"name\"","                ]","            },","            \"recipient_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    },","                    \"name\": {\"type\":\"string\"}","                },","                \"required\": [","                    \"account_id\",","                    \"account_type\"","                ]","            },","            \"sender\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"external_user_id\": {\"type\":\"string\"},","                    \"name\": {\"type\":\"string\"},","                    \"user_details\": {","                        \"type\":[\"array\",\"null\"],","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                },","                                \"values\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"type\": \"string\"","                                    }","                                }","                            },","                            \"required\": [","                                \"details_type\",","                                \"values\"","                            ]","                        }","                    },","                    \"user_id\": {\"type\":\"string\"},","                    \"user_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                    }","                },","                \"required\": [","                    \"external_user_id\",","                    //\"name\", // TO BE ENFORCED","                    \"user_id\",","                    \"user_type\"","                ]","            },","            \"sender_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_number\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"number\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"IBAN\", \"LOCAL\"]","                            }","                        },","                        \"required\": [","                            \"number\",","                            \"type\"","                        ]","                    },","                    \"account_number_masked\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    },","                    \"accountholder_name\": {\"type\":\"string\"},","                    \"bank_code\": {\"type\":\"string\"},","                    \"institution_id\": {\"type\":\"string\"},","                    \"institution_name\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                },","                \"required\": [","                    \"account_number\",","                    \"account_number_masked\",","                    \"account_type\",","                    \"institution_id\",","                    \"institution_name\",","                    \"user_id\"","                ]","            },","            \"status\": {","                \"type\":\"string\",","                \"enum\": [\"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"FAILED\"]","            },","            \"updated_at\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"created_at\",","            \"fees\",","            \"mandate_details\",","            \"mandate_id\",","            \"payment_method_id\",","            \"recipient\",","            \"sender\",","            \"status\",","            \"updated_at\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"55464328-8230-437e-b6c6-dba69083a997","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"enduser_consent\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/{{mandate_id2}}/authorize","description":"<p>Mark the Mandate as authorized after obtaining end-user consent outside of the Finverse Link UI.</p>\n<p><strong>Access:</strong> This flow is available on demand for Finverse customers who do not need the Finverse UI to collect the user's sender account details and obtain end-user consent. Contact <a href=\"mailto:support@finverse.com\">support@finverse.com</a> to request access.</p>\n<p>To use this flow, the Customer must first complete the following API calls:</p>\n<ol>\n<li>Create a Payment User for the sender</li>\n<li>Create a Payment Account for the sender</li>\n<li>Create a Mandate with the existing sender account (Payment Account of the user). Refer to: <code>POST /mandates/sender_account</code>.</li>\n<li>Mark the Mandate as authorized (this API call).</li>\n</ol>\n<p><strong>Authorization</strong>: <code>customer_token</code>.</p>\n","urlObject":{"path":["mandates","{{mandate_id2}}","authorize"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"e72618fc-e325-4175-96a3-044c548b9ee8","name":"Success","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"enduser_consent\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/{{mandate_id2}}/authorize"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"01HC1H154RVHMV86S7QN27GEDD"},{"key":"Date","value":"Fri, 06 Oct 2023 03:38:21 GMT"},{"key":"Content-Length","value":"1095"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"fees\": [],\n    \"mandate_details\": {\n        \"collection_entity_name\": \"Finverse Technologies Limited\",\n        \"currency\": \"HKD\",\n        \"description\": \"Test Mandate\",\n        \"end_date\": \"2024-03-01\",\n        \"processor_entity_name\": \"Finverse Technologies Limited\",\n        \"start_date\": \"2023-10-06\",\n        \"transaction_limits\": {\n            \"max_period_amount\": 10000,\n            \"max_period_count\": 10,\n            \"max_transaction_amount\": 10000,\n            \"period\": \"MONTHLY\"\n        }\n    },\n    \"mandate_id\": \"01HC1H0S5V7J3Q2GN5CBW7T3VZ\",\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"payment_method_id\": \"01HJ5XHXWYMTBC50V26Q0T2BG2\",\n    \"recipient\": {\n        \"name\": \"John Doe\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01GMC9RSPCHAJ9ER9A4JR4AP6X\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"unique_user_id_1695719460\",\n        \"name\": \"John Doe\",\n        \"user_details\": [\n            {\n                \"details_type\": \"HK_ID\",\n                \"values\": [\n                    \"01HB8C32WGQNSP3MMN4P49YT70\"\n                ]\n            }\n        ],\n        \"user_id\": \"01HB8C32TD4V1RSB1HCZREXVMH\",\n        \"user_type\": \"INDIVIDUAL\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"01HBA46Z9JVR54MWR0YDEZX3XK\",\n        \"account_number\": {\n            \"number\": \"01HBA46ZEA306KKDPVE80MYME5\",\n            \"type\": \"LOCAL\"\n        },\n        \"account_number_masked\": \"132XXXXXXXX4343\",\n        \"account_type\": \"EXTERNAL_ACCOUNT\",\n        \"accountholder_name\": \"01HBA46ZFFKHXQ4F60HRGH9HF4\",\n        \"institution_id\": \"testbank-dbs-hk\",\n        \"user_id\": \"01HB8C32TD4V1RSB1HCZREXVMH\"\n    },\n    \"status\": \"PROCESSING\",\n    \"updated_at\": \"2023-10-06T03:38:20.444Z\"\n}"},{"id":"7d9d9a91-09ea-4d5d-967f-5077d720e14a","name":"Error (mandate locked)","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"enduser_consent\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/{{mandate_id}}/authorize"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"01HBW6F4AZNPXKE14DWQF5DXRE"},{"key":"Date","value":"Wed, 04 Oct 2023 01:57:31 GMT"},{"key":"Content-Length","value":"274"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"\",\n        \"error_code\": \"PAYMENT_MANDATE_LOCKED\",\n        \"message\": \"The mandate cannot be interacted with at the time being because there are other processes underway that requires the mandate to be unchanged.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"PAYMENT_ERROR\"\n    }\n}"},{"id":"748b11ee-bdf3-406f-8875-c062e4605f00","name":"Error (missing authorization inputs)","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"enduser_consent\": false\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/{{mandate_id}}/authorize"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"01HBW6GD600Z1JQNKX9PQ8JF6G"},{"key":"Date","value":"Wed, 04 Oct 2023 01:58:13 GMT"},{"key":"Content-Length","value":"276"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"We are missing the following information needed to authorize this Mandate: consent\",\n        \"error_code\": \"PAYMENT_MANDATE_AUTHORIZATION_INCOMPLETE\",\n        \"message\": \"Mandate authorization is incomplete\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"PAYMENT_ERROR\"\n    }\n}"},{"id":"89b4869a-93f6-4ea9-ae70-5cabe6a39123","name":"Error (missing permissions for this endpoint)","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"enduser_consent\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/mandates/{{mandate_id2}}/authorize"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"01HBXPBS70Y2F16SFJKPPV6PH6"},{"key":"Date","value":"Wed, 04 Oct 2023 15:54:33 GMT"},{"key":"Content-Length","value":"300"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 401,\n    \"error\": {\n        \"code\": \"NOT_AUTHORIZED\",\n        \"details\": \"Invalid bearer token\",\n        \"error_code\": \"NOT_AUTHORIZED\",\n        \"message\": \"Authorization failed. Please review authorization requirements in API documentation.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    },\n    \"message\": \"Invalid bearer token\"\n}"}],"_postman_id":"55464328-8230-437e-b6c6-dba69083a997"}],"id":"ad6e7d7a-8870-47d2-b4e0-5ac5cb2f1b8f","_postman_id":"ad6e7d7a-8870-47d2-b4e0-5ac5cb2f1b8f","description":""}],"id":"61b8b500-ecea-4d1a-ad56-eb2c6a7058fe","_postman_id":"61b8b500-ecea-4d1a-ad56-eb2c6a7058fe","description":""},{"name":"Payments (Collections)","item":[{"name":"/payments (Create Payment)","event":[{"listen":"test","script":{"id":"06dc77b8-8899-481a-8399-0bbf98b304b5","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if(jsonData.payment_id) {","    pm.environment.set(\"payment_id\", jsonData.payment_id)","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payment ID or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"payment_id\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","     var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"amount\": {\"type\":\"integer\"},","            \"amount_total_with_surcharge\": {\"type\":\"integer\"},","            \"created_at\": {\"type\":\"string\"},","            \"currency\": {\"type\":\"string\"},","            \"error\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\": [","                    \"error_code\",","                    \"message\",","                    \"type\"","                ] ","            },","            \"fees\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"amount\": {\"type\":\"integer\"},","                        \"currency\": {\"type\":\"string\"},","                        \"paid_by\": {","                            \"type\":\"string\",","                            \"enum\": [\"RECIPIENT\", \"SENDER\"]","                        },","                        \"paid_by_account_id\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"amount\", ","                        \"currency\", ","                        \"paid_by\", ","                        \"paid_by_account_id\"","                    ]","                }","            },","            \"metadata\": {\"type\":\"object\"},","            \"payment_details\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"collection_entity_name\": {\"type\":\"string\"},","                    \"description\": {\"type\":\"string\"},","                    \"external_transaction_reference\": {\"type\": \"string\"},","                    \"mandate_id\": {\"type\":\"string\"},","                    \"processor_entity_name\": {\"type\":\"string\"},","                    \"processor_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"auth_code\": {\"type\":\"string\"},","                            \"processor_id\": {\"type\":\"string\"},","                            \"processor_reference\": {\"type\":\"string\"},","                            \"result\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"decline_code\": {\"type\":\"string\"},","                                    \"decline_reason\": {\"type\":\"string\"},","                                    \"last_action\": {\"type\":\"string\"},","                                    \"result_code\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                            \"scheme\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"processor_id\"","                        ]","                    },","                    \"recurring_payment_mode\": {","                        \"type\":\"string\",","                        \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                    },                       ","                    \"references\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"bank_transaction_reference\": {\"type\":\"string\"},","                            \"dda_reference\": {\"type\":\"string\"},","                            \"finverse_transaction_reference\": {\"type\":\"string\"}","                        },","                        \"required\": []","                    },","                    \"transaction_reference_id\": {\"type\": \"string\"} // TO BE DEPRECATED","                    },","                \"required\": [","                    \"description\",","                    \"external_transaction_reference\"","                ]","            },","            \"payment_id\": {\"type\":\"string\"},","            \"payment_method\": { // SIMPLIED PAYMENT METHOD OBJECT -- TO BE EXPANDED LATER INTO FULL PAYMENT_METHOD OBJECT","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"card\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"card_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"brand\": {\"type\":\"string\"},","                                    \"funding\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                                    },","                                    \"last4\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                        },","                    },","                },","                \"required\": [ ]","            },","            \"payment_method_id\":  {\"type\":\"string\"}, // TBD: MAY BE DEPRECATED LATER ONCE INCLUDED IN FULL PAYMENT_METHOD OBJECT","            \"recipient\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"name\": {\"type\":\"string\"}","                },","                \"required\": [","                    \"name\"","                ]","            },","            \"recipient_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    }","                },","                \"required\": [","                    \"account_id\",","                    \"account_type\"","                ]","            },","            \"sender\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"external_user_id\": {\"type\":\"string\"},","                    \"name\": {\"type\":\"string\"},","                    \"user_details\": {","                        \"type\":[\"array\",\"null\"],","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                },","                                \"values\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"type\": \"string\"","                                    }","                                }","                            },","                            \"required\": [","                                \"details_type\",","                                \"values\"","                            ]","                        }","                    },","                    \"user_id\": {\"type\":\"string\"},","                    \"user_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                    }","                },","                \"required\": [","                    \"external_user_id\",","                    //\"name\", // TO BE ENFORCED","                    \"user_id\",","                    \"user_type\"","                ]","            },","            \"sender_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_number\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"number\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"IBAN\", \"LOCAL\"]","                            }","                        },","                        \"required\": [","                            \"number\",","                            \"type\"","                        ]","                    },","                    \"account_number_masked\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    },","                    \"accountholder_name\": {\"type\":\"string\"},","                    \"bank_code\": {\"type\":\"string\"},","                    \"institution_id\": {\"type\":\"string\"},","                    \"institution_name\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                },","                \"required\": [","                    \"account_type\",","                    \"user_id\"","                ]","            },","            \"status\": {","                \"type\":\"string\",","                \"enum\": [\"CREATED\", \"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"SUBMITTED\", \"EXECUTED\", \"CANCELLED\", \"FAILED\"]","            },","            \"surcharge_amount\": {\"type\":\"integer\"},","            \"type\": {","                \"type\":\"string\",","                \"enum\": [\"CARD\", \"MANDATE\", \"MANUAL\", \"SINGLE\"]","            },","            \"updated_at\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"amount\",","            \"amount_total_with_surcharge\",","            \"created_at\",","            \"currency\",","            \"fees\",","            \"payment_details\",","            \"payment_id\",","            //\"payment_method\", // TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT METHOD","            //\"payment_method_id\", // TBC: TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT_METHOD_ID","            \"recipient\",","            \"recipient_account\",","            \"sender\",","            \"status\",","            \"surcharge_amount\",","            \"type\",","            \"updated_at\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }                ","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"befdf1d8-80d3-46ea-be7c-b6956ba70b05","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"Idempotency-Key","value":"d0586db5-0b28-4543-a1e2-057054a2f9d2","description":"<p>String, required. See request documentation.</p>\n"},{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. See request documentation.</p>\n"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 6969,\n    \"currency\": \"AUD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"branch\": \"branch1\"\n    },\n    \"payment_details\": {\n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1777634238\"\n        // \"recurring_payment_mode\": \"FIXED_SCHEDULE\"\n    },\n    \"payment_method_id\": \"{{payment_method_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments","description":"<p>Create new Payment (off-session) for an existing <code>payment_method_id</code>.</p>\n<p>To iniitate an off-session payment, a user (sender) must have <code>autopay_consent</code> = <code>true</code> (set via the Payment Link flow or Mandate setup flow), and a valid payment method (Mandate or Card).</p>\n<p>To initiate an on-session payment for a user (sender) with a stored payment method but <code>autopay_consent</code> = <code>false</code>, use <code>POST /payment_links</code> instead (passing the user's <code>external_user_id</code>).</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"request-headers\">Request headers</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Key</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Idempotency-Key</td>\n<td>string, required</td>\n<td>Makes it safe to retry the request without re-triggering the underlying create Payment operation. Any retries will return the same response as the first request using the same key.</td>\n</tr>\n<tr>\n<td>X-Request-Id</td>\n<td>string, optional</td>\n<td>Customer-provided unique ID for the request (useful for debugging purposes)</td>\n</tr>\n<tr>\n<td>X-Finverse-Testing</td>\n<td>string, optional</td>\n<td>Header to trigger specific errors, used for testing only (e.g. when collecting a payment from a Testbank account).  <br />  <br />Accepted values:  <br />(A) Direct debit mandate payment (Hong Kong) (<code>payment_method.type</code> = <code>MANDATE)</code>:  <br />- <code>DBS_BACKOFFICE_ERROR_RJCT_NARR</code> : payment will be rejected by bank with <code>error_code</code> = <code>PAYMENT_REJECTED</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"request-parameters\">Request parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>amount</td>\n<td>integer (ISO 4217 \"minor\" currency unit), required</td>\n<td>Amount of the payment (in minor currency unit)</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code), required</td>\n<td>Currency of the payment (e.g. HKD)</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format. E.g. <code>employer_name</code>: <code>Apple Inc</code></td>\n</tr>\n<tr>\n<td>payment_details</td>\n<td>object, required</td>\n<td>Details on the payment. See below.</td>\n</tr>\n<tr>\n<td>payment_method_id</td>\n<td>string, conditionally required</td>\n<td>Finverse <code>payment_method_id</code>. Required unless <code>mandate_id</code> is provided in <code>payment_details</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment_details-object-required\">payment_details (object, required)</h3>\n<p>Details describing the payment.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>description</td>\n<td>string (SWIFT character set, max length: 100 characters), required</td>\n<td>User-facing description for the payment transaction. SWIFT character set includes the following characters: alphanumeric, space, and symbols <code>/ - ? : ( ) . , ' +</code></td>\n</tr>\n<tr>\n<td>external_transaction_reference</td>\n<td>string (SWIFT character set, max length: 35 characters), required</td>\n<td>User-facing transaction reference ID for the payment transaction.  <br />  <br />SWIFT character set includes the following characters: alphanumeric, space, and symbols <code>/ - ? : ( ) . , ' +</code>  <br />  <br />We recommend including at least 1 latin letter in the reference, as some payment methods (e.g. Cards) cannot process payments where statement references have zero letters.</td>\n</tr>\n<tr>\n<td>mandate_id</td>\n<td>string, conditionally required</td>\n<td><code>mandate_id</code> from mandates object. Required if <code>payment_method_id</code> is not provided.</td>\n</tr>\n<tr>\n<td>recurring_payment_mode</td>\n<td>string ENUM, optional</td>\n<td>Optional flag indicating whether the payment is a recurring payment.  <br />  <br />Recurring payments may be eligible for discounted fees (contact <a href=\"mailto:sales@finverse.com\">sales@finverse.com</a> for details). Finverse may require a customer app to use this flag to qualify for agreed rates.  <br />  <br /><strong>Possible ENUM values:</strong>  <br />- <code>FIXED_SCHEDULE</code>: recurring payment collected on a fixed, regular schedule up to 1 year between payments (e.g. weekly, monthly, quarterly, annually), agreed to by the end-user. Payment amounts can be variable. Examples: subscriptions, monthly contract invoices, monthly rent, bills autopay.  <br />  <br />- <code>VARIABLE_RECURRING</code>: recurring payment collected on an adhoc/variable schedule. Payment amounts can be variable. Examples: usage-based contracts/tolls collected on a variable schedule, on-demand services (e.g. Uber, Deliveroo), wallet top-ups.  <br />  <br />- <code>NON_RECURRING</code>: non-recurring payments initiated by the end-user. Example: ecommerce purchase using a one-time or stored card.  <br />  <br />- <code>UNKNOWN</code>: value not defined.</td>\n</tr>\n<tr>\n<td>transaction_reference_id</td>\n<td>string (SWIFT character set, max length: 10 characters), required</td>\n<td>(DEPRECATED - replaced by <code>external_transaction_reference</code>)  <br />User-facing transaction reference ID for the payment transaction.  <br />  <br />SWIFT character set includes the following characters: alphanumeric, space, and symbols <code>/ - ? : ( ) . , ' +</code>  <br />  <br />We recommend including at least 1 latin letter in the reference, as some payment methods (e.g. Cards) cannot process payments where statement references have zero letters.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-fields\">Response fields</h2>\n<p>The response is a Payment object.</p>\n<p>Refer to Payment object data model in <code>GET /payments/{payment_id}</code>.</p>\n","urlObject":{"path":["payments"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"e754d4a8-02bf-43f9-a88c-0fd63d3278a8","name":"Success (mandate payment processing)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"4b1bc475-d7ad-4f27-9d65-0b0ac875efe0","description":"String, required. See request documentation."},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. See request documentation."},{"key":"X-Finverse-Testing","value":"DBS_BACKOFFICE_ERROR_RJCT_NARR","description":"String, optional. See request documentation.","disabled":true}],"body":{"mode":"raw","raw":"{\n    \"amount\": 500,\n    \"currency\": \"HKD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {    \n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1777634238\",\n        \"transaction_reference_id\": \"1777634238\"\n    },\n    \"payment_method_id\": \"{{payment_method_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1723822061"},{"key":"Date","value":"Fri, 16 Aug 2024 15:27:41 GMT"},{"key":"Content-Length","value":"1275"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 500,\n    \"created_at\": \"2024-08-16T15:27:41.534Z\",\n    \"currency\": \"HKD\",\n    \"fees\": [\n        {\n            \"amount\": 500,\n            \"currency\": \"HKD\",\n            \"paid_by\": \"RECIPIENT\",\n            \"paid_by_account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\"\n        }\n    ],\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"payment_details\": {\n        \"collection_entity_name\": \"Finverse Technologies Limited\",\n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1723822061\",\n        \"mandate_id\": \"01HW1W33TGWTZHNE0CR4VNB4WB\",\n        \"processor_entity_name\": \"Finverse Technologies Limited\",\n        \"transaction_reference_id\": \"1723822061\"\n    },\n    \"payment_id\": \"01J5DWTDMNNGT58N913GSZPKPP\",\n    \"payment_method_id\": \"01HW1W33X48J0SVTMM344K6SPD\",\n    \"recipient\": {\n        \"name\": \"Demo App\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"user_id_1||1713754935\",\n        \"name\": \"John Doe\",\n        \"user_details\": [],\n        \"user_id\": \"01HW1W246Y9MSN22T50J3CD04T\",\n        \"user_type\": \"INDIVIDUAL\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"01HW1W3MH68XRDS9W2XFZMJJEP\",\n        \"account_number\": {\n            \"number\": \"01HW1W3MQ339JXA66JF8P62042\",\n            \"type\": \"LOCAL\"\n        },\n        \"account_number_masked\": \"939XXXXXX94\",\n        \"account_type\": \"EXTERNAL_ACCOUNT\",\n        \"accountholder_name\": \"01HW1W3MP3VMSTFR7FSB2YJ50F\",\n        \"bank_code\": \"420\",\n        \"institution_id\": \"testbank-dbs-hk\",\n        \"institution_name\": \"Testbank (HK) Payments - Personal\",\n        \"user_id\": \"01HW1W246Y9MSN22T50J3CD04T\"\n    },\n    \"status\": \"PROCESSING\",\n    \"type\": \"MANDATE\",\n    \"updated_at\": \"2024-08-16T15:27:41.534Z\"\n}"},{"id":"05b4c640-805d-4344-b48b-8309f03fe93c","name":"Success (card payment processing)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"e38400eb-278d-47b4-8a56-b7f2cede9432","description":"String, required. See request documentation."},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. See request documentation."},{"key":"X-Finverse-Testing","value":"DBS_BACKOFFICE_ERROR_RJCT_NARR","description":"String, optional. See request documentation.","disabled":true}],"body":{"mode":"raw","raw":"{\n    \"amount\": 500,\n    \"currency\": \"HKD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {    \n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1777634238\",\n        \"transaction_reference_id\": \"1777634238\"\n    },\n    \"payment_method_id\": \"{{payment_method_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1723821338"},{"key":"Date","value":"Fri, 16 Aug 2024 15:15:38 GMT"},{"key":"Content-Length","value":"1001"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 500,\n    \"created_at\": \"2024-08-16T15:15:38.648Z\",\n    \"currency\": \"HKD\",\n    \"fees\": [\n        {\n            \"amount\": 252,\n            \"currency\": \"HKD\",\n            \"paid_by\": \"SENDER\",\n            \"paid_by_account_id\": \"01H5VEQWDZGWMY6D9EFFX7GXJQ\"\n        },\n        {\n            \"amount\": 261,\n            \"currency\": \"HKD\",\n            \"paid_by\": \"RECIPIENT\",\n            \"paid_by_account_id\": \"01H5VEQWDZGWMY6D9EFFX7GXJQ\"\n        }\n    ],\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"payment_details\": {\n        \"collection_entity_name\": \"Demo Company Ltd\",\n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1723821338\",\n        \"transaction_reference_id\": \"1723821338\"\n    },\n    \"payment_id\": \"01J5DW4BSEA4A2WH3W0KZ843N2\",\n    \"payment_method\": {\n        \"card\": {\n            \"card_details\": {\n                \"brand\": \"Visa\",\n                \"last4\": \"4242\"\n            }\n        }\n    },\n    \"payment_method_id\": \"01J5DVNBGRCPVBHKBBS1GC1EQD\",\n    \"recipient\": {\n        \"name\": \"Demo App\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01H5VEQWDZGWMY6D9EFFX7GXJQ\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"user_id_1||1723820830\",\n        \"name\": \"John Doe\",\n        \"user_details\": [],\n        \"user_id\": \"01J5DVMX7JSXWRA97MYAK3NT5P\",\n        \"user_type\": \"UNKNOWN\"\n    },\n    \"status\": \"PROCESSING\",\n    \"type\": \"CARD\",\n    \"updated_at\": \"2024-08-16T15:15:38.648Z\"\n}"},{"id":"8a60fa6d-5ed2-4a3e-985c-f907da3ed4c8","name":"Error (invalid parameter)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"62b4dbe7-2649-4338-8eb6-d1e4548c36bd","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 500,\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {    \n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1777634238\",\n        \"transaction_reference_id\": \"1777634238\"\n    },\n    \"payment_method_id\": \"{{payment_method_id}}\",\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1705593660"},{"key":"Date","value":"Thu, 18 Jan 2024 16:01:00 GMT"},{"key":"Content-Length","value":"271"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 602,\n    \"error\": {\n        \"details\": \"currency in body is required\",\n        \"error_code\": \"INVALID_PARAMETER\",\n        \"message\": \"The parameters provided are invalid. See details.\",\n        \"request_id\": \"1705593660\",\n        \"type\": \"API_ERROR\"\n    },\n    \"message\": \"currency in body is required\"\n}"},{"id":"b798a780-a122-43c9-a055-1f64c26d9e52","name":"Error (invalid amount type)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"8fc7cadb-bdc9-400d-9926-cdad13ce6d2b","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 500.1,\n    \"currency\": \"HKD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {    \n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1777634238\",\n        \"transaction_reference_id\": \"1777634238\"\n    },\n    \"payment_method_id\": \"{{payment_method_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1705593838"},{"key":"Date","value":"Thu, 18 Jan 2024 16:03:58 GMT"},{"key":"Content-Length","value":"531"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 400,\n    \"error\": {\n        \"details\": \"parsing createPaymentRequest body from \\\"\\\" failed, because json: cannot unmarshal number 500.1 into Go struct field CreatePaymentRequest.amount of type int64\",\n        \"error_code\": \"INVALID_PARAMETER\",\n        \"message\": \"The parameters provided are invalid. See details.\",\n        \"request_id\": \"1705593838\",\n        \"type\": \"API_ERROR\"\n    },\n    \"message\": \"parsing createPaymentRequest body from \\\"\\\" failed, because json: cannot unmarshal number 500.1 into Go struct field CreatePaymentRequest.amount of type int64\"\n}"},{"id":"e353ff3e-f912-41a6-a188-848c454bfc0a","name":"Error (invalid payment method ID)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"bad10528-cba5-4135-af75-2921d0108f7b","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 500,\n    \"currency\": \"HKD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {    \n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1777634238\",\n        \"transaction_reference_id\": \"1777634238\"\n    },\n    \"payment_method_id\": \"{{payment_method_id}}2\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1705593892"},{"key":"Date","value":"Thu, 18 Jan 2024 16:04:51 GMT"},{"key":"Content-Length","value":"207"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"\",\n        \"error_code\": \"RESOURCE_NOT_FOUND\",\n        \"message\": \"Resource cannot be found. Resource does not exist, has been deleted, or is not accessible.\",\n        \"request_id\": \"1705593892\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"6bf9ea2c-0a40-4d74-92c4-952e61a897b0","name":"Error (currency not supported by payment method)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"77f1fc66-70ee-46a0-b5a4-b19a8da460d1","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 500,\n    \"currency\": \"CNY\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {    \n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1777634238\",\n        \"transaction_reference_id\": \"1777634238\"\n    },\n    \"payment_method_id\": \"{{payment_method_id}}\",\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1705594322"},{"key":"Date","value":"Thu, 18 Jan 2024 16:12:02 GMT"},{"key":"Content-Length","value":"213"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"\",\n        \"error_code\": \"PAYMENT_CURRENCY_UNAUTHORIZED\",\n        \"message\": \"The currency is not authorized in the mandate. Please use an authorized currency.\",\n        \"request_id\": \"1705594322\",\n        \"type\": \"PAYMENT_ERROR\"\n    }\n}"},{"id":"4add8d94-7920-4b19-bc8c-17664c623b7e","name":"Error (mandate expired)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"ec17c962-47c4-4ea4-a14d-6dfaac569843","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 500,\n    \"currency\": \"HKD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {    \n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1777634238\",\n        \"transaction_reference_id\": \"1777634238\"\n    },\n    \"payment_method_id\": \"{{payment_method_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1709289519"},{"key":"Date","value":"Fri, 01 Mar 2024 10:38:39 GMT"},{"key":"Content-Length","value":"189"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"\",\n        \"error_code\": \"PAYMENT_MANDATE_EXPIRED\",\n        \"message\": \"Cannot create payment because the referred mandate has expired.\",\n        \"request_id\": \"1709289519\",\n        \"type\": \"PAYMENT_ERROR\"\n    }\n}"},{"id":"fda00e83-60db-462d-9530-ca5777146eed","name":"Error (mandate pending or not yet authorized)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"a4fafae7-87b4-44a0-be55-4613684229f4","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 500,\n    \"currency\": \"HKD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {    \n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1777634238\",\n        \"transaction_reference_id\": \"1777634238\"\n    },\n    \"payment_method_id\": \"{{payment_method_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1705594919"},{"key":"Date","value":"Thu, 18 Jan 2024 16:21:59 GMT"},{"key":"Content-Length","value":"219"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"\",\n        \"error_code\": \"PAYMENT_MANDATE_STATUS_INVALID\",\n        \"message\": \"The mandate has not been setup properly. Please check our documentation and try again.\",\n        \"request_id\": \"1705594919\",\n        \"type\": \"PAYMENT_ERROR\"\n    }\n}"},{"id":"e620b47f-d32e-48d6-b885-b0793bbd5d29","name":"Error (mandate not yet effective)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"9bce1a69-09ab-4e6e-b301-f7ef6f04a323","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 500,\n    \"currency\": \"HKD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {    \n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1777634238\",\n        \"transaction_reference_id\": \"1777634238\"\n    },\n    \"payment_method_id\": \"{{payment_method_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1705594770"},{"key":"Date","value":"Thu, 18 Jan 2024 16:19:30 GMT"},{"key":"Content-Length","value":"204"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"\",\n        \"error_code\": \"PAYMENT_MANDATE_NOT_EFFECTIVE\",\n        \"message\": \"Cannot create payment because the referred mandate is not effective yet.\",\n        \"request_id\": \"1705594770\",\n        \"type\": \"PAYMENT_ERROR\"\n    }\n}"},{"id":"8d95c1c3-a0c8-490e-853a-32ee1e59a620","name":"Error (mandate transaction limits exceeded)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"e4aae88e-d9e2-4982-a9ad-970bb87dcb03","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 500,\n    \"currency\": \"SGD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {    \n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1777634238\",\n        \"transaction_reference_id\": \"1777634238\"\n    },\n    \"payment_method_id\": \"{{mandate_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1695116597"},{"key":"Date","value":"Tue, 19 Sep 2023 09:43:17 GMT"},{"key":"Content-Length","value":"248"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"You have reached the maximum total payment value allowed for this mandate over the specified period\",\n        \"error_code\": \"PAYMENT_LIMITS_EXCEEDED\",\n        \"message\": \"Payment limits exceeded\",\n        \"request_id\": \"{unique_id}}\",\n        \"type\": \"PAYMENT_ERROR\"\n    }\n}"}],"_postman_id":"befdf1d8-80d3-46ea-be7c-b6956ba70b05"},{"name":"/payments/{id} (Update Payment metadata)","event":[{"listen":"test","script":{"id":"06dc77b8-8899-481a-8399-0bbf98b304b5","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if(jsonData.payment_id) {","    pm.environment.set(\"payment_id\", jsonData.payment_id)","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payment ID or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"payment_id\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"amount\": {\"type\":\"integer\"},","            \"amount_total_with_surcharge\": {\"type\":\"integer\"},","            \"created_at\": {\"type\":\"string\"},","            \"currency\": {\"type\":\"string\"},","            \"error\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\": [","                    \"error_code\",","                    \"message\",","                    \"type\"","                ] ","            },","            \"fees\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"amount\": {\"type\":\"integer\"},","                        \"currency\": {\"type\":\"string\"},","                        \"paid_by\": {","                            \"type\":\"string\",","                            \"enum\": [\"RECIPIENT\", \"SENDER\"]","                        },","                        \"paid_by_account_id\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"amount\", ","                        \"currency\", ","                        \"paid_by\", ","                        \"paid_by_account_id\"","                    ]","                }","            },","            \"metadata\": {\"type\":\"object\"},","            \"payment_details\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"collection_entity_name\": {\"type\":\"string\"},","                    \"description\": {\"type\":\"string\"},","                    \"external_transaction_reference\": {\"type\": \"string\"},","                    \"mandate_id\": {\"type\":\"string\"},","                    \"processor_entity_name\": {\"type\":\"string\"},","                    \"processor_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"auth_code\": {\"type\":\"string\"},","                            \"processor_id\": {\"type\":\"string\"},","                            \"processor_reference\": {\"type\":\"string\"},","                            \"result\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"decline_code\": {\"type\":\"string\"},","                                    \"decline_reason\": {\"type\":\"string\"},","                                    \"last_action\": {\"type\":\"string\"},","                                    \"result_code\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                            \"scheme\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"processor_id\"","                        ]","                    },","                    \"recurring_payment_mode\": {","                        \"type\":\"string\",","                        \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                    },                       ","                    \"references\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"bank_transaction_reference\": {\"type\":\"string\"},","                            \"dda_reference\": {\"type\":\"string\"},","                            \"finverse_transaction_reference\": {\"type\":\"string\"}","                        },","                        \"required\": []","                    },","                    \"transaction_reference_id\": {\"type\": \"string\"} // TO BE DEPRECATED","                    },","                \"required\": [","                    \"description\",","                    \"external_transaction_reference\"","                ]","            },","            \"payment_id\": {\"type\":\"string\"},","            \"payment_method\": { // SIMPLIED PAYMENT METHOD OBJECT -- TO BE EXPANDED LATER INTO FULL PAYMENT_METHOD OBJECT","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"card\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"card_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"brand\": {\"type\":\"string\"},","                                    \"funding\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                                    },","                                    \"last4\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                        },","                    },","                },","                \"required\": [ ]","            },","            \"payment_method_id\":  {\"type\":\"string\"}, // TBD: MAY BE DEPRECATED LATER ONCE INCLUDED IN FULL PAYMENT_METHOD OBJECT","            \"recipient\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"name\": {\"type\":\"string\"}","                },","                \"required\": [","                    \"name\"","                ]","            },","            \"recipient_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    }","                },","                \"required\": [","                    \"account_id\",","                    \"account_type\"","                ]","            },","            \"sender\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"external_user_id\": {\"type\":\"string\"},","                    \"name\": {\"type\":\"string\"},","                    \"user_details\": {","                        \"type\":[\"array\",\"null\"],","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                },","                                \"values\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"type\": \"string\"","                                    }","                                }","                            },","                            \"required\": [","                                \"details_type\",","                                \"values\"","                            ]","                        }","                    },","                    \"user_id\": {\"type\":\"string\"},","                    \"user_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                    }","                },","                \"required\": [","                    \"external_user_id\",","                    //\"name\", // TO BE ENFORCED","                    \"user_id\",","                    \"user_type\"","                ]","            },","            \"sender_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_number\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"number\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"IBAN\", \"LOCAL\"]","                            }","                        },","                        \"required\": [","                            \"number\",","                            \"type\"","                        ]","                    },","                    \"account_number_masked\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    },","                    \"accountholder_name\": {\"type\":\"string\"},","                    \"bank_code\": {\"type\":\"string\"},","                    \"institution_id\": {\"type\":\"string\"},","                    \"institution_name\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                },","                \"required\": [","                    \"account_type\",","                    \"user_id\"","                ]","            },","            \"status\": {","                \"type\":\"string\",","                \"enum\": [\"CREATED\", \"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"SUBMITTED\", \"EXECUTED\", \"CANCELLED\", \"FAILED\"]","            },","            \"surcharge_amount\": {\"type\":\"integer\"},","            \"type\": {","                \"type\":\"string\",","                \"enum\": [\"CARD\", \"MANDATE\", \"MANUAL\", \"SINGLE\"]","            },","            \"updated_at\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"amount\",","            \"amount_total_with_surcharge\",","            \"created_at\",","            \"currency\",","            \"fees\",","            \"payment_details\",","            \"payment_id\",","            //\"payment_method\", // TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT METHOD","            //\"payment_method_id\", // TBC: TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT_METHOD_ID","            \"recipient\",","            \"recipient_account\",","            \"sender\",","            \"status\",","            \"surcharge_amount\",","            \"type\",","            \"updated_at\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }                ","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"4f5ed99c-8513-42ea-a1f3-afea0a4ec3eb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. See request documentation.</p>\n"}],"body":{"mode":"raw","raw":"{\n    \"metadata\": {\n        \"key\": \"updated_value\",\n        \"new_key\": \"new_value\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments/{{payment_id}}","description":"<p>Update (PATCH) an existing Payment's <code>metadata</code>, identified by the payment's <code>payment_id</code>.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"request-parameters\">Request parameters</h2>\n<p>Only the selected fields below can currently be updated. Any omitted fields will remain unchanged.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>metadata</td>\n<td>object</td>\n<td>Customer-supplied attributes in key:value format. E.g. <code>employer_name</code>: <code>Apple Inc</code>.  <br />  <br />Any keys provided will be inserted as new keys into the existing <code>metadata</code> object, without removing any existing key:value pairs. If a key already exists in the <code>metadata</code> object, its value will be overwritten with the updated value provided.</td>\n</tr>\n</tbody>\n</table>\n</div><p>The following fields are non-editable. Attempting to edit these will return an API error:</p>\n<p><code>amount</code>, <code>amount_total_with_surcharge</code>, <code>currency</code>, <code>created_at</code>, <code>fees</code>, <code>payment_details</code>, <code>payment_id</code>, <code>payment_method_id</code>, <code>recipient</code>, <code>recipient_account</code>, <code>sender</code>, <code>sender_account</code>, , <code>status</code>, <code>surcharge_amount</code>, <code>type</code>, <code>updated_at</code></p>\n<h2 id=\"response-fields\">Response fields</h2>\n<p>The response is the updated Payment object.</p>\n<p>Refer to Payment object data model in <code>GET /payments/{payment_id}</code>.</p>\n<h2 id=\"implementation-guidance\">Implementation guidance</h2>\n<p>Be careful when updating the value of a payment's <code>metadata</code>, as this can impact <strong>downstream handling</strong>:</p>\n<ol>\n<li><p>Some pre-built Finverse integrations (e.g. Rapidstor/Sitelink and Storeganise payments), rely on <code>payment.metadata</code> to trigger downstream events, such as recording successful/failed payments in the integrated system.</p>\n</li>\n<li><p><code>payment.metadata</code> is included in payment webhooks sent by Finverse. If a webhook event is triggered after updating <code>payment.metadata</code> (e.g. due to a <code>payment.status</code> change), any listeners of the webhooks will automatically consume the metadata. Before updating <code>payment.metadata</code>, review how your webhook consumers handle changes to metadata.</p>\n<ol>\n<li>Note: simply updating <code>payment.metadata</code> will not by itself trigger a webhook event.</li>\n</ol>\n</li>\n<li><p>Consider how updated metadata can impact all possible downstream consumers of <code>payment.metadata</code> , including:</p>\n<ol>\n<li><p>Pre-built Finverse integrations (which rely on metadata to record successful/failed payments)</p>\n</li>\n<li><p>Finverse payment statements (which display metadata)</p>\n</li>\n<li><p>ERP and accounting systems (for example, if they use metadata to allocate payments)</p>\n</li>\n<li><p>Analytics/business intelligence solutions, e.g. Power BI</p>\n</li>\n</ol>\n</li>\n</ol>\n","urlObject":{"path":["payments","{{payment_id}}"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"b80db8de-6097-4792-b11e-849857bfa645","name":"Success (payment metadata updated)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. See request documentation."}],"body":{"mode":"raw","raw":"{\n    \"metadata\": {\n        \"key\": \"updated_value\",\n        \"new_key\": \"new_value\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments/{{payment_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1739258646"},{"key":"Date","value":"Tue, 11 Feb 2025 07:24:06 GMT"},{"key":"Content-Length","value":"1362"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 500,\n    \"amount_total_with_surcharge\": 500,\n    \"created_at\": \"2025-02-10T22:01:27.790Z\",\n    \"currency\": \"HKD\",\n    \"fees\": [\n        {\n            \"amount\": 500,\n            \"currency\": \"HKD\",\n            \"paid_by\": \"RECIPIENT\",\n            \"paid_by_account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\"\n        }\n    ],\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"updated_value\",\n        \"new_key\": \"new_value\"\n    },\n    \"payment_details\": {\n        \"collection_entity_name\": \"Finverse Technologies Limited\",\n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1739224888\",\n        \"processor_entity_name\": \"Finverse Technologies Limited\",\n        \"transaction_reference_id\": \"1739224888\"\n    },\n    \"payment_id\": \"01JKRY3C9630R169QPKSGZ5SCK\",\n    \"payment_method_id\": \"01JKRY31TSK2FZ6QPENPKH5CC2\",\n    \"recipient\": {\n        \"name\": \"Demo App\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"user_id_1\",\n        \"name\": \"John Doe\",\n        \"user_details\": [\n            {\n                \"details_type\": \"HK_ID\",\n                \"values\": [\n                    \"01JJJADS8A8M9PH8RT3S9AAT3A\"\n                ]\n            }\n        ],\n        \"user_id\": \"01GWKTK0380NBRCV1B8D6N0SEH\",\n        \"user_type\": \"INDIVIDUAL\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"01JKRY36KBKH4N6B9ZDPMSYSBA\",\n        \"account_number\": {\n            \"number\": \"01JKRY36QWXD22AMWCAX8YX872\",\n            \"type\": \"LOCAL\"\n        },\n        \"account_number_masked\": \"XXX45\",\n        \"account_type\": \"EXTERNAL_ACCOUNT\",\n        \"accountholder_name\": \"01JKRY36RA3449AWF353ARZ1CA\",\n        \"bank_code\": \"420\",\n        \"institution_id\": \"testbank-dbs-hk\",\n        \"institution_name\": \"Testbank (HK) Payments - Personal\",\n        \"user_id\": \"01GWKTK0380NBRCV1B8D6N0SEH\"\n    },\n    \"status\": \"EXECUTED\",\n    \"surcharge_amount\": 0,\n    \"type\": \"MANDATE\",\n    \"updated_at\": \"2025-02-11T07:24:06.864Z\"\n}"},{"id":"8f0de9eb-bf5d-4745-a771-4d8b0b7bb12b","name":"Error (payment not found)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. See request documentation."}],"body":{"mode":"raw","raw":"{\n    \"metadata\": {\n        \"key\": \"updated_value\",\n        \"new_key\": \"new_value\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments/{{id}}"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1739258611"},{"key":"Date","value":"Tue, 11 Feb 2025 07:23:32 GMT"},{"key":"Content-Length","value":"224"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"payment not found\",\n        \"error_code\": \"RESOURCE_NOT_FOUND\",\n        \"message\": \"Resource cannot be found. Resource does not exist, has been deleted, or is not accessible.\",\n        \"request_id\": \"1739258611\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"8ad99d93-d9f2-4b43-b00f-55a6c62ed638","name":"Error (attempted to update non-updatable field)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. See request documentation."}],"body":{"mode":"raw","raw":"{\n    \"metadata\": {\n        \"key\": \"updated_value\",\n        \"new_key\": \"new_value\"\n    },\n    \"status\": \"CANCELLED\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments/{{payment_id}}"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1739258611"},{"key":"Date","value":"Tue, 11 Feb 2025 07:23:32 GMT"},{"key":"Content-Length","value":"224"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"unsupported field status supplied for update\",\n        \"error_code\": \"INVALID_INPUT\",\n        \"message\": \"Invalid parameter value(s). Please review parameter inputs.\",\n        \"request_id\": \"1729069151\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"4f5ed99c-8513-42ea-a1f3-afea0a4ec3eb"},{"name":"/payments/{id}","event":[{"listen":"test","script":{"id":"7670c6c5-b256-4a0c-8268-9bfdd2134668","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.status) {","    console.log(\"Payment status:\", jsonData.status)","};","","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payment Status or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"status\",","        \"error\"","    )","});","","//Payment Status is not FAILED","pm.test(\"Payment Status is not FAILED\", function() {","    pm.expect(jsonData.status).to.not.equal(\"FAILED\")","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"amount\": {\"type\":\"integer\"},","            \"amount_total_with_surcharge\": {\"type\":\"integer\"},","            \"created_at\": {\"type\":\"string\"},","            \"currency\": {\"type\":\"string\"},","            \"error\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\": [","                    \"error_code\",","                    \"message\",","                    \"type\"","                ] ","            },","            \"fees\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"amount\": {\"type\":\"integer\"},","                        \"currency\": {\"type\":\"string\"},","                        \"paid_by\": {","                            \"type\":\"string\",","                            \"enum\": [\"RECIPIENT\", \"SENDER\"]","                        },","                        \"paid_by_account_id\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"amount\", ","                        \"currency\", ","                        \"paid_by\", ","                        \"paid_by_account_id\"","                    ]","                }","            },","            \"metadata\": {\"type\":\"object\"},","            \"payment_details\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"collection_entity_name\": {\"type\":\"string\"},","                    \"description\": {\"type\":\"string\"},","                    \"external_transaction_reference\": {\"type\": \"string\"},","                    \"mandate_id\": {\"type\":\"string\"},","                    \"processor_entity_name\": {\"type\":\"string\"},","                    \"processor_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"auth_code\": {\"type\":\"string\"},","                            \"processor_id\": {\"type\":\"string\"},","                            \"processor_reference\": {\"type\":\"string\"},","                            \"result\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"decline_code\": {\"type\":\"string\"},","                                    \"decline_reason\": {\"type\":\"string\"},","                                    \"last_action\": {\"type\":\"string\"},","                                    \"result_code\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                            \"scheme\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"processor_id\"","                        ]","                    },","                    \"recurring_payment_mode\": {","                        \"type\":\"string\",","                        \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                    },                       ","                    \"references\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"bank_transaction_reference\": {\"type\":\"string\"},","                            \"dda_reference\": {\"type\":\"string\"},","                            \"finverse_transaction_reference\": {\"type\":\"string\"}","                        },","                        \"required\": []","                    },","                    \"transaction_reference_id\": {\"type\": \"string\"} // TO BE DEPRECATED","                    },","                \"required\": [","                    \"description\",","                    \"external_transaction_reference\"","                ]","            },","            \"payment_id\": {\"type\":\"string\"},","            \"payment_method\": { // SIMPLIED PAYMENT METHOD OBJECT -- TO BE EXPANDED LATER INTO FULL PAYMENT_METHOD OBJECT","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"card\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"card_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"brand\": {\"type\":\"string\"},","                                    \"funding\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                                    },","                                    \"last4\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                        },","                    },","                },","                \"required\": [ ]","            },","            \"payment_method_id\":  {\"type\":\"string\"}, // TBD: MAY BE DEPRECATED LATER ONCE INCLUDED IN FULL PAYMENT_METHOD OBJECT","            \"recipient\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"name\": {\"type\":\"string\"}","                },","                \"required\": [","                    \"name\"","                ]","            },","            \"recipient_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    }","                },","                \"required\": [","                    \"account_id\",","                    \"account_type\"","                ]","            },","            \"sender\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"external_user_id\": {\"type\":\"string\"},","                    \"name\": {\"type\":\"string\"},","                    \"user_details\": {","                        \"type\":[\"array\",\"null\"],","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                },","                                \"values\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"type\": \"string\"","                                    }","                                }","                            },","                            \"required\": [","                                \"details_type\",","                                \"values\"","                            ]","                        }","                    },","                    \"user_id\": {\"type\":\"string\"},","                    \"user_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                    }","                },","                \"required\": [","                    \"external_user_id\",","                    //\"name\", // TO BE ENFORCED","                    \"user_id\",","                    \"user_type\"","                ]","            },","            \"sender_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_number\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"number\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"IBAN\", \"LOCAL\"]","                            }","                        },","                        \"required\": [","                            \"number\",","                            \"type\"","                        ]","                    },","                    \"account_number_masked\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    },","                    \"accountholder_name\": {\"type\":\"string\"},","                    \"bank_code\": {\"type\":\"string\"},","                    \"institution_id\": {\"type\":\"string\"},","                    \"institution_name\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                },","                \"required\": [","                    \"account_type\",","                    \"user_id\"","                ]","            },","            \"status\": {","                \"type\":\"string\",","                \"enum\": [\"CREATED\", \"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"SUBMITTED\", \"EXECUTED\", \"CANCELLED\", \"FAILED\"]","            },","            \"surcharge_amount\": {\"type\":\"integer\"},","            \"type\": {","                \"type\":\"string\",","                \"enum\": [\"CARD\", \"MANDATE\", \"MANUAL\", \"SINGLE\"]","            },","            \"updated_at\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"amount\",","            \"amount_total_with_surcharge\",","            \"created_at\",","            \"currency\",","            \"fees\",","            \"payment_details\",","            \"payment_id\",","            //\"payment_method\", // TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT METHOD","            //\"payment_method_id\", // TBC: TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT_METHOD_ID","            \"recipient\",","            \"recipient_account\",","            \"sender\",","            \"status\",","            \"surcharge_amount\",","            \"type\",","            \"updated_at\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }                ","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","//POSTMAN COLLECTION ROUTING LOGIC","//Set next request based on Payment status","if(jsonData.status === \"EXECUTED\") {","    pm.execution.setNextRequest(\"/payment_users (Create Payment User)\"); //Make next request: \"Create payment user\"","    console.log(\"Payment executed. Next step: Create payment user\");","    ","    //Payment Status is EXECUTED (test will always pass)","    pm.test(\"Payment Status is EXECUTED\", function() {","        pm.expect(jsonData.status).to.equal(\"EXECUTED\")","    })","};","","","if(jsonData.status === \"PROCESSING\" || jsonData.status === \"SUBMITTED\") {","    //Count loops through Payment status check if payment is PROCESSING or SUBMITTED","    if (pm.variables.get(\"payment_status_loop_number\") >= 1) {","        var i = Number(pm.variables.get(\"payment_status_loop_number\")) + 1","    }","    else {","        var i = 1","    };","    pm.environment.set(\"payment_status_loop_number\", i);","","    //Set next request based on loop count","    if (i<=5) {","        console.log(\"Checking Payment status: Attempt\", i);","        pm.execution.setNextRequest(\"/payments/{payment_id}\") //Make next request: \"Get Payment\"","","        if (jsonData.status===\"PROCESSING\") {","            console.log(\"Payment processing. Next step: Retrieve Payment status\");","            var timerLength = 5000;","        };","","        if (jsonData.status===\"SUBMITTED\") {","            console.log(\"Payment submitted. Next step: Retrieve Payment status\");","            var timerLength = 5000;","        };","","        if (timerLength) {","            console.log(\"Timer set to:\", timerLength, \"ms\")","            setTimeout(function(){}, timerLength)","        };","    }","    else {","        pm.environment.unset(\"payment_status_loop_number\");","        pm.execution.setNextRequest(\"/payment_users (Create Payment User)\"); //Make next request: \"Create payment user\"","        console.log(\"Payment still pending (PROCESSING or SUBMITTED) after 5 status checks. Next step: Create payment user\");","","        //Payment Status is EXECUTED (test will always fail)","        pm.test(\"Payment Status is EXECUTED\", function() {","            pm.expect(jsonData.status).to.equal(\"EXECUTED\")","        });","    };     ","};","//POSTMAN COLLECTION ROUTING LOGIC - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"ef2d69af-2866-49b9-8a8b-9b134d3fbf75","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"url":"https://api.prod.finverse.net/payments/{{payment_id}}","description":"<p>Retrieve a Payment object (using a specific <code>payment_id</code>).</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"response-fields\">Response fields</h2>\n<p>Single <code>Payment</code> object, containing information on the Payment.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>amount</td>\n<td>integer (ISO 4217 \"minor\" currency unit)</td>\n<td>Amount of the payment (in minor currency unit)</td>\n</tr>\n<tr>\n<td>amount_total_with_surcharge</td>\n<td>integer (ISO 4217 \"minor\" currency unit)</td>\n<td>Total amount of the payment including any transaction fee <code>surcharge_amount</code> paid by the sender (in minor currency unit).  <br />  <br />See <code>surcharge_amount</code> below for details on transaction fee surcharges.</td>\n</tr>\n<tr>\n<td>created_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp when the payment was first created</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code)</td>\n<td>Currency of the payment (e.g. HKD)</td>\n</tr>\n<tr>\n<td>error</td>\n<td>Finverse standard <code>error</code> object, optional</td>\n<td>Details on why the payment failed (returned when <code>status</code> = <code>FAILED</code>).  <br />Note: this is used to detail any asynchronous e errors occuring after payment creation; any synchronous errors (e.g. API validation errors, real-time payment errors) will instead be returned directly during <code>POST /payments</code>.</td>\n</tr>\n<tr>\n<td>fees</td>\n<td>array</td>\n<td>Details on the fee(s) to be charged. See below.</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format. E.g. <code>employer_name</code>: <code>Apple Inc</code></td>\n</tr>\n<tr>\n<td>payment_details</td>\n<td>object</td>\n<td>Details on the payment. See below.</td>\n</tr>\n<tr>\n<td>payment_id</td>\n<td>string (ULID)</td>\n<td>Finverse Payment ID for this payment. Always unique. Creating a payment with different idempotency keys will result in two payments with different IDs.</td>\n</tr>\n<tr>\n<td>payment_method</td>\n<td>object, optional</td>\n<td>Details on the payment method. See below.</td>\n</tr>\n<tr>\n<td>payment_method_id</td>\n<td>string (ULID)</td>\n<td>(TO BE DEPRECATED) Finverse unique ID for the payment method</td>\n</tr>\n<tr>\n<td>recipient</td>\n<td>object</td>\n<td>Details on the recipient of the payment. See below.</td>\n</tr>\n<tr>\n<td>recipient_account</td>\n<td>object</td>\n<td>Details on the recipient's account for the payment (i.e. the Customer App's settlement account at Finverse). See below.</td>\n</tr>\n<tr>\n<td>sender</td>\n<td>object</td>\n<td>Details on the sender of the payment. See below.</td>\n</tr>\n<tr>\n<td>sender_account</td>\n<td>object</td>\n<td>(IN DEVELOPMENT) Details on the Sender's source institution and account, which is funding the payment. See below.</td>\n</tr>\n<tr>\n<td>surcharge_amount</td>\n<td>integer (ISO 4217 \"minor\" currency unit)</td>\n<td>Transaction fee surcharge_amount paid by the sender, if any surcharge has been configured (in minor currency unit).  <br />  <br />Transaction fee surcharges are off by default, but can be set for specific payment methods, or for custom scenarios (e.g. based on transaction amount, payment flow, etc). Contact <a href=\"https://mailto:support@Finverse.com\">support@Finverse.com</a> to configure surcharges.</td>\n</tr>\n<tr>\n<td>status</td>\n<td>string ENUM</td>\n<td>Current status of the payment. Possible values: <code>CREATED</code>, <code>AUTHORIZATION_REQUIRED</code>, <code>PROCESSING</code>, <code>SUBMITTED, EXECUTED</code>, <code>CANCELLED</code>, <code>FAILED</code></td>\n</tr>\n<tr>\n<td>type</td>\n<td>string ENUM</td>\n<td>Specified payment type.  <br />  <br />Possible values: - <code>CARD</code>: payment via card gateway (e.g. Stripe)  <br />- <code>MANDATE</code>: direct debit bank payment  <br />- <code>MANUAL</code>: manual bank transfer (e.g. FPS, PayNow)  <br />- <code>SINGLE</code>: not used (reserved for future use)</td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last update to the payment's record</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"fees-array\">fees (array)</h3>\n<p>Details on the fee(s) to be charged. Returns an empty array if no fees will be charged.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>amount</td>\n<td>integer (ISO 4217 \"minor\" currency unit)</td>\n<td>Amount of the fee (in minor currency unit)</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code)</td>\n<td>Currency of the fee (e.g. HKD)</td>\n</tr>\n<tr>\n<td>paid_by</td>\n<td>string ENUM</td>\n<td>Party who will be charged the fee. Possible values: <code>RECIPIENT</code>, <code>SENDER</code>  <br />  <br />- <code>SENDER</code>: this indicates a fee surcharge is charged to the sender of the payment. The total payment amount charged to the sender will be the <code>payment.amount</code> + <code>payment.fee.amount</code>. The recipient will receive this total payment amount minus any fees where <code>paid_by</code> = <code>RECIPIENT.</code></td>\n</tr>\n<tr>\n<td>paid_by_account_id</td>\n<td>string (ULID), optional</td>\n<td><strong>(beta)</strong> Finverse Payment Account ID of the party who will be charged the fee.  <br />  <br />This references the <code>account_id</code> of the:  <br />-<code>recipient_account</code> (when <code>paid_by</code> = <code>RECIPIENT</code>)  <br />-<code>sender_account</code> (when <code>paid_by</code> = <code>SENDER</code> and the payment has an associated <code>sender_account</code>).  <br />  <br />If <code>paid_by</code> = SENDER but sender has no associated sender_account (e.g. sender paid with a credit card instead of a bank account) then <code>paid_by_account_id</code> will be empty.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment_details-object\">payment_details (object)</h3>\n<p>Details describing the Payment.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>collection_entity_name</td>\n<td>string</td>\n<td>Name of the legal entity directly collecting the payment. This name may be displayed to users in the Finverse UI and in email notifications and in the sender's bank statements.  <br />  <br />For payments directly collected by the merchant (e.g. SG eGIRO payments), <code>collection_entity_name</code> is typically the merchant's legal entity name, configured by Finverse during customer onboarding. Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> to configure your merchant details.  <br />  <br />For payments collected through Finverse (e.g. HK eDDA payments), <code>collection_entity_name</code> will be the same as <code>processor_entity_name</code> (see below).</td>\n</tr>\n<tr>\n<td>description</td>\n<td>string (SWIFT character set)</td>\n<td>User-facing description for the payment transaction. SWIFT character set includes the following characters: alphanumeric, space, and symbols <code>/ - ? : ( ) . , ' +</code></td>\n</tr>\n<tr>\n<td>external_transaction_reference</td>\n<td>string (SWIFT character set)</td>\n<td>User-facing transaction reference for the payment transaction. SWIFT character set includes the following characters: alphanumeric, space, and symbols / - ? : ( ) . , ' +</td>\n</tr>\n<tr>\n<td>mandate_id</td>\n<td>string (ULID), optional</td>\n<td><code>mandate_id</code> from Mandates object. Only returned if <code>type</code> = <code>MANDATE</code>.</td>\n</tr>\n<tr>\n<td>processor_entity_name</td>\n<td>string, optional</td>\n<td>Name of the payment processor (if any) through which payments are collected. This name may be displayed to users in the Finverse UI, in email notifications and in the sender's bank/card statements.  <br />  <br />For payments directly collected by the merchant (e.g. SG eGIRO payments, most card payments), no <code>processor_entity_name</code> is returned.  <br />  <br />For payments collected through Finverse (e.g. HK eDDA payments), <code>processor_entity_name</code> will be Finverse's legal entity name.</td>\n</tr>\n<tr>\n<td>processor_details</td>\n<td>object, optional</td>\n<td>Additional details on how the payment was processed. See below.</td>\n</tr>\n<tr>\n<td>recurring_payment_mode</td>\n<td>string ENUM, optional</td>\n<td>Flag used to identify recurring payment use cases (for which some payment methods can be eligible for discounted pricing).  <br />  <br />Possible values: - <code>FIXED_SCHEDULE</code>: used for subscriptions (fixed schedule, fixed or variable amount)  <br />- <code>NON_RECURRING</code>: used for one-off, user-initiated payments (like an Uber ride or Amazon shopping order)  <br />- <code>VARIABLE_RECURRING</code>: used for variable schedule + amount recurring contracts (e.g. usage based contracts like Cloud / SaaS services, or property rentals with additional adhoc charges for value-added services)</td>\n</tr>\n<tr>\n<td>references</td>\n<td>object, optional</td>\n<td>Additional references for the Payment (e.g. transaction IDs generated by Finverse or the payment gateway). See below.</td>\n</tr>\n<tr>\n<td>transaction_reference_id</td>\n<td>string (SWIFT character set)</td>\n<td>(DEPRECATED - replaced by <code>external_transaction_reference</code>)  <br />User-facing transaction reference ID for the payment transaction. SWIFT character set includes the following characters: alphanumeric, space, and symbols <code>/ - ? : ( ) . , ' +</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"processor_details-object-optional\">processor_details (object, optional)</h3>\n<p>Additional details on how the payment was processed.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>auth_code</td>\n<td>string, optional</td>\n<td>Authorization code returned by the payment gateway</td>\n</tr>\n<tr>\n<td>processor_id</td>\n<td>string ENUM,optional</td>\n<td>ID of the payment gateway which processed the payment.  <br />  <br />Possible values: - <code>ADYEN</code></td>\n</tr>\n<tr>\n<td>processor_reference</td>\n<td>string, optional</td>\n<td>Transaction reference returned by the payment gateway</td>\n</tr>\n<tr>\n<td>result</td>\n<td>object, optional</td>\n<td>Additional details on the payment processing result. See below.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"result-object-optional\">result (object, optional)</h3>\n<p>Additional details on the payment processing result.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>decline_reason</td>\n<td>string, optional</td>\n<td>Decline reason returned by the payment gateway (if payment was declined)</td>\n</tr>\n<tr>\n<td>result_code</td>\n<td>string, optional</td>\n<td>Payment result code returned by the payment gateway</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"references-object-optional\">references (object, optional)</h3>\n<p>Additional references for the Payment (e.g. transaction IDs generated by Finverse or the payment gateway).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>bank_transaction_reference</td>\n<td>string,optional</td>\n<td>Unique bank reference ID for the payment.</td>\n</tr>\n<tr>\n<td>dda_reference</td>\n<td>string,optional</td>\n<td>(Direct debit mandate payments only) Unique reference ID for the Direct Debit Authorization registered with the user's bank, used to authorized the payment.  <br />  <br />The user's bank may quote this reference in notifications to the user, and in the user's bank statements.</td>\n</tr>\n<tr>\n<td>finverse_transaction_reference</td>\n<td>string, optional</td>\n<td>Finverse-generated unique transaction ID for the payment. This value may be generated and passed to 3rd party payment gateways when using the Finverse <code>payment_id</code> is not possible or desirable (e.g. when the transaction reference is user-facing, making a more user-friendly transaction reference preferable).</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment_method-object-optional\">payment_method (object, optional)</h3>\n<p>Details on the payment method authorized by the end-user. Refer to the Payment Method data model in <code>GET /payment_users/{user_id}/payment_methods</code> for details on the Payment Method object.</p>\n<p><strong>Limitations</strong>:</p>\n<ul>\n<li><p><strong>Payment Method object is not returned for one-time manual bank transfers</strong> (<code>payment.type</code> = <code>MANUAL</code>, e.g. FPS/PayNow bank transfers).</p>\n<ul>\n<li>These are payments initiated by Payment Links where end-users \"push\" funds to the recipient bank account. No payment method is created or stored in Finverse systems.</li>\n</ul>\n</li>\n<li><p><strong>Payment Method object is returned, but without a</strong> <strong><code>payment_method_id</code>****, for some card payments with Future Payments disabled</strong>.</p>\n<ul>\n<li><p>These are one-time card payments initiated by Payment Links. In some cases (depending on the external payment gateway through which the payment is processed), no payment method is created or stored in Finverse systems, so no <code>payment_method_id</code> is available.</p>\n</li>\n<li><p>However, some card details may still be returned in the <code>payment_method.card.card_details</code> object, for informational purposes (if available from the external payment gateway).</p>\n</li>\n</ul>\n</li>\n</ul>\n<h3 id=\"recipient-object-sender-object\">recipient (object), sender (object)</h3>\n<p>The recipient and sender objects include a Payment User object for each of the counterparties of a payment. Refer to the Payment User data model in <code>GET /payment_users/{payment_user_id}</code> for details on the Payment User object.</p>\n<p>Note: Some Payment User metadata fields are omitted for clarity (e.g. <code>created_at</code>, <code>metadata</code>, <code>updated_at</code>).</p>\n<h3 id=\"recipient_account-object-sender_account-object\">recipient_account (object), sender_account (object)</h3>\n<p>The recipient_account and sender_account objects include a Payment Account object for each of the counterparties of a payment. Refer to the Payment Account object data model in <code>GET /payment_users/{user_id}/payment_accounts</code> for details on the Payment Account object.</p>\n<p>Note: Some Payment Account metadata fields are omitted for clarity (e.g. <code>created_at</code>, <code>metadata</code>, <code>updated_at</code>).</p>\n","urlObject":{"path":["payments","{{payment_id}}"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"a6692afb-90df-45c4-b789-4ffda3973af1","name":"Success (Executed mandate payment)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payments/{{payment_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1731657094"},{"key":"Date","value":"Fri, 15 Nov 2024 07:51:34 GMT"},{"key":"Content-Length","value":"1368"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 500,\n    \"amount_total_with_surcharge\": 500,\n    \"created_at\": \"2025-06-21T06:30:26.839Z\",\n    \"currency\": \"HKD\",\n    \"fees\": [\n        {\n            \"amount\": 500,\n            \"currency\": \"HKD\",\n            \"paid_by\": \"RECIPIENT\",\n            \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n        }\n    ],\n    \"metadata\": {\n        \"branch\": \"branch1\",\n        \"key\": \"updated_value\",\n        \"new_key\": \"new_value\"\n    },\n    \"payment_details\": {\n        \"collection_entity_name\": \"Finverse Technologies Limited\",\n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1750487427\",\n        \"mandate_id\": \"01JY8JWDY51SYHP006XZBAMVGN\",\n        \"processor_entity_name\": \"Finverse Technologies Limited\",\n        \"references\": {\n            \"bank_transaction_reference\": \"DBS_BANK_REF_01JY8JWTJ92E3RX2TF5F1RA2KK\",\n            \"finverse_transaction_reference\": \"FV250101AABB\",\n            \"dda_reference\": \"FINVERSE T-62F2-FINV\"\n        },\n        \"transaction_reference_id\": \"1750487427\"\n    },\n    \"payment_id\": \"01JY8JWSHVR9SNZWYFYX2C9CTV\",\n    \"payment_method_id\": \"01JY8JWE50618D9RGH44AR884F\",\n    \"recipient\": {\n        \"name\": \"Finverse Test\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"user_id_1_1750487415\",\n        \"name\": \"John Doe\",\n        \"user_details\": [],\n        \"user_id\": \"01JY8JWE3NG8CJ7DVJZJC3HMJT\",\n        \"user_type\": \"INDIVIDUAL\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"01JY8JWKX2HSZJ500DNEJ3JGHQ\",\n        \"account_number\": {\n            \"number\": \"01JY8JWM06NV1VNCPM6D5JJ9Y9\",\n            \"type\": \"LOCAL\"\n        },\n        \"account_number_masked\": \"XXX45\",\n        \"account_type\": \"EXTERNAL_ACCOUNT\",\n        \"accountholder_name\": \"01JY8JWKZRZ32FFE4G0FPM19H1\",\n        \"bank_code\": \"420\",\n        \"institution_id\": \"testbank-dbs-hk\",\n        \"institution_name\": \"Testbank (HK) Payments - Personal\",\n        \"user_id\": \"01JY8JWE3NG8CJ7DVJZJC3HMJT\"\n    },\n    \"status\": \"EXECUTED\",\n    \"surcharge_amount\": 0,\n    \"type\": \"MANDATE\",\n    \"updated_at\": \"2025-06-21T06:30:28.482Z\"\n}"},{"id":"88fa089b-f9a6-4775-b6d0-1c355e04eeee","name":"Success (Executed stored card payment)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payments/{{payment_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1723821405"},{"key":"Date","value":"Fri, 16 Aug 2024 15:16:44 GMT"},{"key":"Content-Length","value":"1105"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 10000,\n    \"amount_total_with_surcharge\": 10575,\n    \"created_at\": \"2025-06-21T05:02:42.165Z\",\n    \"currency\": \"HKD\",\n    \"fees\": [\n        {\n            \"amount\": 575,\n            \"currency\": \"HKD\",\n            \"paid_by\": \"SENDER\",\n            \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n        },\n        {\n            \"amount\": 595,\n            \"currency\": \"HKD\",\n            \"paid_by\": \"RECIPIENT\",\n            \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n        }\n    ],\n    \"metadata\": {\n        \"adyen_balance_account_id\": \"BA3299Q223229Z5NHCM3R4HKQ\",\n        \"adyen_payment_psp_reference\": \"Q3LPXXS84P99HPV5\",\n        \"adyen_transaction_id\": \"EVJN42CL6225223W5NQBTJ62975JWWHKD\",\n        \"adyen_transaction_net_amount\": \"HKD 975.00\",\n        \"adyen_value_date\": \"2026-01-09T07:45:00Z\",\n        \"contract_id\": \"1234\",\n        \"key\": \"value\",\n        \"storeganise_invoice_ids\": \"ABCD\",\n        \"user_address\": \"1 Admiralty Drive\",\n        \"user_city\": \"Hong Kong\",\n        \"user_country\": \"HK\",\n        \"user_first_name\": \"John\",\n        \"user_last_name\": \"Doe\"\n    },\n    \"payment_details\": {\n        \"collection_entity_name\": \"Finverse Test\",\n        \"description\": \"TEST Payment\",\n        \"external_transaction_reference\": \"INV12345\",\n        \"processor_details\": {\n            \"auth_code\": \"014085\",\n            \"processor_id\": \"adyen\",\n            \"processor_reference\": \"CJRXVH53WM4GBQ65\",\n            \"result\": {\n                \"result_code\": \"Authorised\"\n            }\n        },\n        \"references\": {\n            \"finverse_transaction_reference\": \"FV250101AABB\"\n        }\n    },\n    \"payment_id\": \"01JY8DW4CGB3Z0WTBHZFSZTJZ4\",\n    \"payment_method\": {\n        \"card\": {\n            \"card_details\": {\n                \"brand\": \"Visa\",\n                \"last4\": \"4242\"\n            }\n        }\n    },\n    \"payment_method_id\": \"01JY8DW4DAQY5STF25AE22W5C7\",\n    \"recipient\": {\n        \"name\": \"Finverse Test\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"user_id_1||1750482147\",\n        \"name\": \"John Doe\",\n        \"user_details\": [],\n        \"user_id\": \"01JY8DVPA28N4TB11N9H57J5CX\",\n        \"user_type\": \"UNKNOWN\"\n    },\n    \"status\": \"EXECUTED\",\n    \"surcharge_amount\": 575,\n    \"type\": \"CARD\",\n    \"updated_at\": \"2025-06-21T05:03:09.340Z\"\n}"},{"id":"b8de4001-6f49-4673-8389-c2574ed818a3","name":"Success (One-time card payment executed by payment link)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payments/{{payment_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1723821493"},{"key":"Date","value":"Fri, 16 Aug 2024 15:18:13 GMT"},{"key":"Content-Length","value":"1130"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 10000,\n    \"created_at\": \"2024-08-16T15:12:26.675Z\",\n    \"currency\": \"HKD\",\n    \"fees\": [\n        {\n            \"amount\": 575,\n            \"currency\": \"HKD\",\n            \"paid_by\": \"SENDER\",\n            \"paid_by_account_id\": \"01H5VEQWDZGWMY6D9EFFX7GXJQ\"\n        },\n        {\n            \"amount\": 595,\n            \"currency\": \"HKD\",\n            \"paid_by\": \"RECIPIENT\",\n            \"paid_by_account_id\": \"01H5VEQWDZGWMY6D9EFFX7GXJQ\"\n        }\n    ],\n    \"metadata\": {\n        \"contract_id\": \"1234\",\n        \"external_contact_id\": \"user_id_1||1723821113\",\n        \"external_invoice_number\": \"INV12345\",\n        \"key\": \"value\",\n        \"stripe_charge_id\": \"ch_3PoRpCJXxo5qMAzS0iQdRfXq\",\n        \"stripe_payment_intent_id\": \"pi_3PoRpCJXxo5qMAzS0j6Bwens\"\n    },\n    \"payment_details\": {\n        \"colleciton_entity_name\": \"Demo Company Ltd\",\n        \"description\": \"TEST Payment\",\n        \"external_transaction_reference\": \"INV12345\",\n        \"processor_details\": {\n            \"auth_code\": \"014085\",\n            \"processor_id\": \"adyen\",\n            \"processor_reference\": \"CJRXVH53WM4GBQ65\",\n            \"result\": {\n                \"result_code\": \"Authorised\"\n            }\n        },\n        \"references\": {\n            \"finverse_transaction_reference\": \"FV250101AABB\"\n        }\n    },\n    \"payment_id\": \"01J5DVXVE4BCXMRDKGTQ0FJRHK\",\n    \"payment_method\": {\n        \"card\": {\n            \"card_details\": {\n                \"brand\": \"Visa\",\n                \"last4\": \"4242\"\n            }\n        }\n    },\n    \"recipient\": {\n        \"name\": \"Demo App\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01H5VEQWDZGWMY6D9EFFX7GXJQ\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"user_id_1||1723821113\",\n        \"name\": \"John Doe\",\n        \"user_details\": [],\n        \"user_id\": \"01J5DVXHCDW75ZQN2TKANEQQZ7\",\n        \"user_type\": \"UNKNOWN\"\n    },\n    \"status\": \"EXECUTED\",\n    \"type\": \"CARD\",\n    \"updated_at\": \"2024-08-16T15:12:26.676Z\"\n}"},{"id":"1621e650-36db-4d95-8549-c7bcecdd70ed","name":"Success (Manual payment executed by payment link)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payments/{{payment_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1740474915"},{"key":"Date","value":"Tue, 25 Feb 2025 09:15:16 GMT"},{"key":"Content-Length","value":"1180"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 10000,\n    \"amount_total_with_surcharge\": 10000,\n    \"created_at\": \"2025-02-25T09:12:29.453Z\",\n    \"currency\": \"HKD\",\n    \"fees\": [\n        {\n            \"amount\": 50,\n            \"currency\": \"HKD\",\n            \"paid_by\": \"RECIPIENT\",\n            \"paid_by_account_id\": \"01H5VEQ9DZP46TB3ZM3WPNT74H\"\n        }\n    ],\n    \"metadata\": {\n        \"contract_id\": \"1234\",\n        \"external_contact_id\": \"user_id_1||1740123925\",\n        \"external_invoice_number\": \"INV12345\",\n        \"key\": \"value\",\n        \"storeganise_invoice_ids\": \"ABCD\",\n        \"user_address\": \"1 Admiralty Drive\",\n        \"user_city\": \"Hong Kong\",\n        \"user_country\": \"HK\",\n        \"user_first_name\": \"John\",\n        \"user_last_name\": \"Doe\"\n    },\n    \"payment_details\": {\n        \"collection_entity_name\": \"Finverse Technologies Limited\",\n        \"description\": \"TEST Payment\",\n        \"external_transaction_reference\": \"INV12345\",\n        \"processor_entity_name\": \"Finverse Technologies Limited\",\n        \"references\": {\n            \"finverse_transaction_reference\": \"FV250101AABB\"\n        }\n    },\n    \"payment_id\": \"01JMY624F0X3SJMMJYM0W6X2BQ\",\n    \"recipient\": {\n        \"name\": \"Demo App\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01H5VEQ9DZP46TB3ZM3WPNT74H\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"user_id_1||1740123925\",\n        \"name\": \"John Doe\",\n        \"user_details\": [],\n        \"user_id\": \"01JMKQFX5MA3HXW3DTR71P0C81\",\n        \"user_type\": \"BUSINESS\"\n    },\n    \"status\": \"EXECUTED\",\n    \"surcharge_amount\": 0,\n    \"type\": \"MANUAL\",\n    \"updated_at\": \"2025-02-25T09:14:50.354Z\"\n}"},{"id":"baffff98-4dcc-459a-8754-ecaa7313eaad","name":"Error (payment not found)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","type":"text","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payments/{{payment_id2}}"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1705595208"},{"key":"Date","value":"Thu, 18 Jan 2024 16:26:48 GMT"},{"key":"Content-Length","value":"227"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"Payment_id not found\",\n        \"error_code\": \"RESOURCE_NOT_FOUND\",\n        \"message\": \"Resource cannot be found. Resource does not exist, has been deleted, or is not accessible.\",\n        \"request_id\": \"1705595208\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"4db624c2-e691-4dd0-bd10-af89485134f6","name":"Error (payment rejected by bank)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":"https://api.prod.finverse.net/payments/{{payment_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1716198987"},{"key":"Date","value":"Mon, 20 May 2024 09:56:27 GMT"},{"key":"Content-Length","value":"1634"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 500,\n    \"created_at\": \"2024-05-20T09:56:24.845Z\",\n    \"currency\": \"HKD\",\n    \"error\": {\n        \"details\": \"Payment rejected by your institution. Please verify that your account has sufficient funds and try again, or contact your institution's customer support. (Error details: NARR Additional reject reason from debtor bank <Free Text>)\",\n        \"error_code\": \"PAYMENT_REJECTED\",\n        \"message\": \"Payment rejected\",\n        \"request_id\": \"1716198987\",\n        \"type\": \"PAYMENT_ERROR\"\n    },\n    \"fees\": [\n        {\n            \"amount\": 500,\n            \"currency\": \"HKD\",\n            \"paid_by\": \"RECIPIENT\",\n            \"paid_by_account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\"\n        }\n    ],\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"payment_details\": {\n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1716198980\",\n        \"mandate_id\": \"01HY9W7YP9EB217Z0SH9EDE7H7\",\n        \"transaction_reference_id\": \"1716198980\"\n    },\n    \"payment_id\": \"01HYAPWF1TGGZW7330PS03HPW5\",\n    \"payment_method_id\": \"01HY9W7YV3R1MRRN2KVS4N3PPG\",\n    \"recipient\": {\n        \"name\": \"Demo App\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"user_id_1||1716171036\",\n        \"name\": \"John Doe\",\n        \"user_details\": [],\n        \"user_id\": \"01HY9W7NBTP0D5K8PVE6XQGF8Y\",\n        \"user_type\": \"INDIVIDUAL\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"01HY9W8N76G9FJ9S71M7YTY3WH\",\n        \"account_number\": {\n            \"number\": \"01HY9W8NCT6JZ7F4M60JYZBM4K\",\n            \"type\": \"LOCAL\"\n        },\n        \"account_number_masked\": \"330XXXXX0303\",\n        \"account_type\": \"EXTERNAL_ACCOUNT\",\n        \"accountholder_name\": \"01HY9W8NBWV837VDYZSN1FDMT9\",\n        \"bank_code\": \"420\",\n        \"institution_id\": \"testbank-dbs-hk\",\n        \"institution_name\": \"Testbank (HK) Payments - Personal\",\n        \"user_id\": \"01HY9W7NBTP0D5K8PVE6XQGF8Y\"\n    },\n    \"status\": \"FAILED\",\n    \"type\": \"MANDATE\",\n    \"updated_at\": \"2024-05-20T09:56:24.845Z\"\n}"}],"_postman_id":"ef2d69af-2866-49b9-8a8b-9b134d3fbf75"}],"id":"18e49dc9-d47b-43fb-8b00-c7fdcba49f2d","_postman_id":"18e49dc9-d47b-43fb-8b00-c7fdcba49f2d","description":""},{"name":"Payment Testing","item":[{"name":"01 - Mandates: HK eDDA authorization","item":[{"name":"Trigger immediate error (when submitting to bank)","event":[{"listen":"test","script":{"id":"4bfdfa6c-632e-4e01-9dc6-64050dd0c96f","exec":["//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});"],"type":"text/javascript"}}],"id":"5626211f-56d7-496b-80db-3a6af7ebe764","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"url":"https://test-bank.{{env}}.finverse.net/scenario/{{mandate_id}}?testingType=DBS_ACK1_BACK_OFFICE_ERROR_DTAC05","description":"<p>Configure a test direct debit mandate to return status = <code>FAILED</code> when submitted to the bank for authorization.</p>\n<p><strong>Authorization</strong>: none</p>\n<h3 id=\"testing-use-case\">Testing use-case</h3>\n<p><strong>Flow: Direct debit Mandate authorization</strong></p>\n<ul>\n<li>Hong Kong eDDA only</li>\n</ul>\n<p><em>Note: only tests Mandate authorization/setup, not payments using the Mandate.</em></p>\n<p><strong>Availability</strong>: any mandate created where the sender account is a \"Testbank\"</p>\n<p><strong>Scenario: Immediate Mandate authorization error</strong></p>\n<ul>\n<li><p>Test case: when Finverse submits the Mandate authorization request to the bank, bank immediately rejects the request</p>\n</li>\n<li><p>Result: mandate <code>status</code> = FAILED</p>\n</li>\n</ul>\n<h3 id=\"request-url-parameters\">Request URL parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>URL parameter</strong></th>\n<th><strong>Value</strong></th>\n<th><strong>Test behaviour</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>testingType</td>\n<td>DBS_ACK1_BACK_OFFICE_ERROR_DTACT05</td>\n<td>Triggers an immediate error when submitting the mandate creation request to the Test Bank.  <br />  <br />**Result:  <br />**mandate <code>status</code> = <code>FAILED</code> (immediately)  <br />  <br />mandate <code>error</code> object will contain details on the error.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"response\">Response</h3>\n<p><strong>Success</strong>: <code>HTTP 200</code> with empty body</p>\n","urlObject":{"protocol":"https","path":["scenario","{{mandate_id}}"],"host":["test-bank","{{env}}","finverse","net"],"query":[{"key":"testingType","value":"DBS_ACK1_BACK_OFFICE_ERROR_DTAC05"}],"variable":[]}},"response":[{"id":"2e03550a-1ecf-46a1-8296-fd061c6cb7d8","name":"Success","originalRequest":{"method":"POST","header":[],"url":{"raw":"https://test-bank.prod.finverse.net/scenario/{{mandate_id}}?testingType=DBS_ACK1_BACK_OFFICE_ERROR_DTAC05","protocol":"https","host":["test-bank","prod","finverse","net"],"path":["scenario","{{mandate_id}}"],"query":[{"key":"testingType","value":"DBS_ACK1_BACK_OFFICE_ERROR_DTAC05"}]}},"status":"OK","code":200,"_postman_previewlanguage":"plain","header":[{"key":"X-Request-Id","value":"01HXR6VNS67F0TAXG2FHJREYAX"},{"key":"Date","value":"Mon, 13 May 2024 05:29:57 GMT"},{"key":"Content-Length","value":"0"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":null}],"_postman_id":"5626211f-56d7-496b-80db-3a6af7ebe764"},{"name":"Trigger delayed success (i.e. long bank processing)","event":[{"listen":"test","script":{"id":"4bfdfa6c-632e-4e01-9dc6-64050dd0c96f","exec":["//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});"],"type":"text/javascript"}}],"id":"9aedad01-00aa-4962-a6b9-9082843ed2b6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"url":"https://test-bank.{{env}}.finverse.net/scenario/{{mandate_id}}?testingType=DBS_ACK2_UPDATE_AFTER_60","description":"<p>Configure a test direct debit mandate to return status = <code>SUCCEEDED</code> with a set delay, after being submitted to the bank for authorization.</p>\n<p><strong>Authorization</strong>: none</p>\n<h3 id=\"testing-use-case\">Testing use-case</h3>\n<p><strong>Flow: Direct debit Mandate authorization</strong></p>\n<ul>\n<li>Hong Kong eDDA only</li>\n</ul>\n<p><em>Note: only tests Mandate authorization/setup, not payments using the Mandate.</em></p>\n<p><strong>Availability</strong>: any mandate created where the sender account is a \"Testbank\"</p>\n<p><strong>Scenario: Delayed Mandate authorization success</strong></p>\n<ul>\n<li><p>Test case: after Finverse submits the Mandate authorization request to the bank, bank accepts the Mandate setup request after a (configurable) delay. This is helpful to test async happy paths.</p>\n</li>\n<li><p>Result: mandate <code>status</code> = SUCCEEDED (async, after configurable delay)</p>\n</li>\n</ul>\n<h3 id=\"request-url-parameters\">Request URL parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>URL parameter</strong></th>\n<th><strong>Value</strong></th>\n<th><strong>Test behaviour</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>testingType</td>\n<td>DBS_ACK2_UPDATE_AFTER_XX  <br />  <br />(where XX indicates the desired delay, in seconds)</td>\n<td>Triggers a delayed success when submitting the mandate creation request to the Test Bank.  <br />  <br /><strong>Result:</strong>  <br />mandate <code>status</code> = <code>SUBMITTED</code> (for XX seconds), then mandate <code>status</code> = <code>SUCCEEDED</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"response\">Response</h3>\n<p><strong>Success</strong>: <code>HTTP 200</code> with empty body</p>\n","urlObject":{"protocol":"https","path":["scenario","{{mandate_id}}"],"host":["test-bank","{{env}}","finverse","net"],"query":[{"key":"testingType","value":"DBS_ACK2_UPDATE_AFTER_60"}],"variable":[]}},"response":[{"id":"ec7e7a93-6cc3-413f-93f1-6751722fc31c","name":"Success","originalRequest":{"method":"POST","header":[],"url":{"raw":"https://test-bank.prod.finverse.net/scenario/{{mandate_id}}?testingType=DBS_ACK2_BACK_OFFICE_DELAYED_ERROR_DTAC05_60","protocol":"https","host":["test-bank","prod","finverse","net"],"path":["scenario","{{mandate_id}}"],"query":[{"key":"testingType","value":"DBS_ACK2_BACK_OFFICE_DELAYED_ERROR_DTAC05_60"}]}},"status":"OK","code":200,"_postman_previewlanguage":"plain","header":[{"key":"X-Request-Id","value":"01HXR718R0FVQVSPS4KDPKZ28V"},{"key":"Date","value":"Mon, 13 May 2024 05:33:01 GMT"},{"key":"Content-Length","value":"0"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":null}],"_postman_id":"9aedad01-00aa-4962-a6b9-9082843ed2b6"},{"name":"Trigger delayed error (during bank processing)","event":[{"listen":"test","script":{"id":"4bfdfa6c-632e-4e01-9dc6-64050dd0c96f","exec":["//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});"],"type":"text/javascript"}}],"id":"9a248eb1-d493-4b1f-9b7a-ded4f64b5de0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"url":"https://test-bank.{{env}}.finverse.net/scenario/{{mandate_id}}?testingType=DBS_ACK2_BACK_OFFICE_DELAYED_ERROR_DTAC05_60","description":"<p>Configure a test direct debit mandate to return status = <code>FAILED</code> with a set delay, after being submitted to the bank for authorization.</p>\n<p><strong>Authorization</strong>: none</p>\n<h3 id=\"testing-use-case\">Testing use-case</h3>\n<p><strong>Flow: Direct debit Mandate authorization</strong></p>\n<ul>\n<li>Hong Kong eDDA only</li>\n</ul>\n<p><em>Note: only tests Mandate authorization/setup, not payments using the Mandate.</em></p>\n<p><strong>Availability</strong>: any mandate created where the sender account is a \"Testbank\"</p>\n<p><strong>Scenario: Delayed Mandate authorization error</strong></p>\n<ul>\n<li><p>Test case: after Finverse submits the Mandate authorization request to the bank, bank rejects the Mandate setup request after a (configurable) delay. This is helpful to test async unhappy paths.</p>\n</li>\n<li><p>Result: mandate <code>status</code> = FAILED (async, after configurable delay)</p>\n</li>\n</ul>\n<h3 id=\"request-url-parameters\">Request URL parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>URL parameter</th>\n<th><strong>Value</strong></th>\n<th><strong>Test behaviour</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>testingType</td>\n<td>DBS_ACK2_BACK_OFFICE_DELAYED_ERROR_DTAC05_XX  <br />  <br />(where XX indicates the desired delay, in seconds)</td>\n<td>Triggers a delayed error when submitting the mandate creation request to the Test Bank.  <br />  <br /><strong>Result:</strong>  <br />mandate <code>status</code> = <code>SUBMITTED</code> (for XX seconds), then mandate <code>status</code> = <code>FAILED</code>.  <br />  <br />Mandate <code>error</code> object will contain details on the error.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"response\">Response</h3>\n<p><strong>Success</strong>: <code>HTTP 200</code> with empty body</p>\n","urlObject":{"protocol":"https","path":["scenario","{{mandate_id}}"],"host":["test-bank","{{env}}","finverse","net"],"query":[{"key":"testingType","value":"DBS_ACK2_BACK_OFFICE_DELAYED_ERROR_DTAC05_60"}],"variable":[]}},"response":[{"id":"5abbb8a4-f53f-44f6-bf86-95766233acb9","name":"Success","originalRequest":{"method":"POST","header":[],"url":{"raw":"https://test-bank.prod.finverse.net/scenario/{{mandate_id}}?testingType=DBS_ACK2_BACK_OFFICE_DELAYED_ERROR_DTAC05_60","protocol":"https","host":["test-bank","prod","finverse","net"],"path":["scenario","{{mandate_id}}"],"query":[{"key":"testingType","value":"DBS_ACK2_BACK_OFFICE_DELAYED_ERROR_DTAC05_60"}]}},"status":"OK","code":200,"_postman_previewlanguage":"plain","header":[{"key":"X-Request-Id","value":"01HXR718R0FVQVSPS4KDPKZ28V"},{"key":"Date","value":"Mon, 13 May 2024 05:33:01 GMT"},{"key":"Content-Length","value":"0"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":null}],"_postman_id":"9a248eb1-d493-4b1f-9b7a-ded4f64b5de0"}],"id":"75180407-131a-4e6c-88be-fbef7993b8b7","description":"<p><strong>Note: applicable to HONG KONG eDDA mandates only</strong> (eDDA = electronic direct debit authorization).</p>\n<h3 id=\"testing-overview\">Testing overview</h3>\n<p>The following Test Bank testing requests modify the default Test Bank mandate setup behaviour (which is to immediately approve each mandate). These testing requests can be used to replicate real-life complexity in mandate setup flows (e.g. delayed errors/successes).</p>\n<p>The Test Bank testing requests work by passing a target <code>mandateId</code> and a specified test behaviour via the <code>testingType</code> URL parameter, i.e.:</p>\n<p><code>POST https://test-bank.prod.finverse.net/scenario/{mandate_id}?testingType={SCENARIO}</code></p>\n<p>The testing requests should be sent when the mandate <code>status</code> = <code>AUTHORIZATION_REQUIRED</code> (i.e. after the mandate is created, but before the mandate is submitted to the Test Bank for processing).</p>\n<h3 id=\"test-scenarios\">Test scenarios</h3>\n<ol>\n<li><p>Immediate mandate error: Bank immediately rejects the mandate setup request</p>\n</li>\n<li><p>Delayed mandate success: Bank accepts the mandate setup request after a (configurable) delay. This is helpful to test async happy paths.</p>\n</li>\n<li><p>Delayed mandate error: Bank rejects the mandate setup request after a (configurable) delay. This is helpful to test async unhappy paths.</p>\n</li>\n</ol>\n<h3 id=\"how-to-test-payment-links-flow\">How to test (Payment Links flow)</h3>\n<p>How to use testing requests with Payment Links:</p>\n<ol>\n<li><p>On the \"Select payment method\" screen, select \"Direct debit\"</p>\n</li>\n<li><p>Start the direct debit mandate setup flow</p>\n</li>\n<li><p>On the \"Select your financial institution\" screen, select \"Testbank (HK) Payments\"</p>\n</li>\n<li><p>Enter test account details (make sure the accountholder name matches the <code>sender.name</code> submitted to Finverse in the <code>POST /payment_links</code> request)</p>\n</li>\n<li><p>Pause on the \"Setup direct debit\" confirmation screen (\"Please confirm the following details...\").</p>\n<ol>\n<li>Copy the <code>mandate_id</code> URL parameter from this screen's URL.</li>\n<li>Note: the mandate will be in <code>status</code> = <code>AUTHORIZATION_REQUIRED</code>, but not yet submitted.</li>\n</ol>\n</li>\n<li><p>Trigger the desired Test Bank testing request</p>\n</li>\n<li><p>Continue on the \"Setup direct debit\" confirmation screen by clicking \"Continue\"</p>\n<ol>\n<li>Finverse will submit the Mandate to Test Bank, which will apply the requested test scenario.</li>\n</ol>\n</li>\n</ol>\n","_postman_id":"75180407-131a-4e6c-88be-fbef7993b8b7"},{"name":"02 - Payments: HK eDDA Payments","item":[{"name":"Create Mandate Payment: PAYMENT_REJECTED scenario","event":[{"listen":"test","script":{"id":"06dc77b8-8899-481a-8399-0bbf98b304b5","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if(jsonData.payment_id) {","    pm.environment.set(\"payment_id\", jsonData.payment_id)","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payment ID or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"payment_id\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"amount\": {\"type\":\"integer\"},","            \"amount_total_with_surcharge\": {\"type\":\"integer\"},","            \"created_at\": {\"type\":\"string\"},","            \"currency\": {\"type\":\"string\"},","            \"error\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\": [","                    \"error_code\",","                    \"message\",","                    \"type\"","                ] ","            },","            \"fees\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"amount\": {\"type\":\"integer\"},","                        \"currency\": {\"type\":\"string\"},","                        \"paid_by\": {","                            \"type\":\"string\",","                            \"enum\": [\"RECIPIENT\", \"SENDER\"]","                        },","                        \"paid_by_account_id\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"amount\", ","                        \"currency\", ","                        \"paid_by\", ","                        \"paid_by_account_id\"","                    ]","                }","            },","            \"metadata\": {\"type\":\"object\"},","            \"payment_details\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"collection_entity_name\": {\"type\":\"string\"},","                    \"description\": {\"type\":\"string\"},","                    \"external_transaction_reference\": {\"type\": \"string\"},","                    \"mandate_id\": {\"type\":\"string\"},","                    \"references\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"dda_reference\": {\"type\":\"string\"},","                            \"finverse_transaction_reference\": {\"type\":\"string\"}","                        },","                        \"required\": []","                    },","                    \"transaction_reference_id\": {\"type\": \"string\"}, // TO BE DEPRECATED","                    \"processor_entity_name\": {\"type\": \"string\"}","                },","                \"required\": [","                    \"description\",","                    \"external_transaction_reference\"","                ]","            },","            \"payment_id\": {\"type\":\"string\"},","            \"payment_method\": { // SIMPLIED PAYMENT METHOD OBJECT -- TO BE EXPANDED LATER INTO FULL PAYMENT_METHOD OBJECT","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"card\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"card_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"brand\": {\"type\":\"string\"},","                                    \"last4\": {\"type\":\"string\"}","                                },","                                \"required\": []","                            },","                        },","                    },","                },","                \"required\": [ ]","            },","            \"payment_method_id\":  {\"type\":\"string\"}, // TBD: MAY BE DEPRECATED LATER ONCE INCLUDED IN FULL PAYMENT_METHOD OBJECT","            \"recipient\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"name\": {\"type\":\"string\"}","                },","                \"required\": [","                    \"name\"","                ]","            },","            \"recipient_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    }","                },","                \"required\": [","                    \"account_id\",","                    \"account_type\"","                ]","            },","            \"sender\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"external_user_id\": {\"type\":\"string\"},","                    \"name\": {\"type\":\"string\"},","                    \"user_details\": {","                        \"type\":[\"array\",\"null\"],","                        \"items\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                },","                                \"values\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"type\": \"string\"","                                    }","                                }","                            },","                            \"required\": [","                                \"details_type\",","                                \"values\"","                            ]","                        }","                    },","                    \"user_id\": {\"type\":\"string\"},","                    \"user_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                    }","                },","                \"required\": [","                    \"external_user_id\",","                    //\"name\", // TO BE ENFORCED","                    \"user_id\",","                    \"user_type\"","                ]","            },","            \"sender_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_number\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"number\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"IBAN\", \"LOCAL\"]","                            }","                        },","                        \"required\": [","                            \"number\",","                            \"type\"","                        ]","                    },","                    \"account_number_masked\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    },","                    \"accountholder_name\": {\"type\":\"string\"},","                    \"bank_code\": {\"type\":\"string\"},","                    \"institution_id\": {\"type\":\"string\"},","                    \"institution_name\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                },","                \"required\": [","                    \"account_number\",","                    \"account_number_masked\",","                    \"account_type\",","                    \"institution_id\",","                    \"institution_name\",","                    \"user_id\"","                ]","            },","            \"status\": {","                \"type\":\"string\",","                \"enum\": [\"CREATED\", \"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"SUBMITTED\", \"EXECUTED\", \"CANCELLED\", \"FAILED\"]","            },","            \"surcharge_amount\": {\"type\":\"integer\"},","            \"type\": {","                \"type\":\"string\",","                \"enum\": [\"CARD\", \"MANDATE\", \"MANUAL\", \"SINGLE\"]","            },","            \"updated_at\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"amount\",","            \"amount_total_with_surcharge\",","            \"created_at\",","            \"currency\",","            \"fees\",","            \"payment_details\",","            \"payment_id\",","            //\"payment_method\", // TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT METHOD","            //\"payment_method_id\", // TBC: TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT_METHOD_ID","            \"recipient\",","            \"recipient_account\",","            \"sender\",","            \"status\",","            \"surcharge_amount\",","            \"type\",","            \"updated_at\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }                ","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"517e6de4-ce9e-4dd5-b278-45c7d8f30e60","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"Idempotency-Key","value":"723ee9d7-0f3b-4475-a2b4-37702677ee67","description":"<p>String, required. See request documentation.</p>\n"},{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. See request documentation.</p>\n"},{"key":"X-Finverse-Testing","value":"DBS_BACKOFFICE_ERROR_RJCT_AM04","description":"<p>String, optional. See request documentation.</p>\n"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 500,\n    \"currency\": \"HKD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {    \n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1777634238\"\n        //\"transaction_reference_id\": \"1777634238\"\n    },\n    \"payment_method_id\": \"{{payment_method_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments","description":"<p>Create a test Mandate payment (HK eDDA payment) which will automatically fail with payment status = <code>FAILED</code> and payment <code>error.error_code</code> = <code>PAYMENT_REJECTED</code>.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h3 id=\"testing-use-case\">Testing use-case</h3>\n<p><strong>Flow: Mandate payments</strong></p>\n<ul>\n<li>Hong Kong: Mandates (eDDA)</li>\n</ul>\n<p><strong>Availability</strong>: any HKD payment on a HKD Mandate created by a non-live customer app.</p>\n<p><strong>Scenario: Mandate payment failure</strong></p>\n<ul>\n<li><p>Test case: Finverse/bank attempts the Mandate payment and returns a payment rejected error.</p>\n</li>\n<li><p>Result: payment <code>status</code> = <code>FAILED</code> with payment <code>error.error_code</code> = <code>PAYMENT_REJECTED</code></p>\n</li>\n</ul>\n<p><strong>Testing steps:</strong></p>\n<ol>\n<li><p><strong>Create HKD Mandate</strong> using either <code>POST /payment_links</code> or Mandate creation flow ( <code>POST /mandates</code> followed by Mandate authorization). Note the <code>payment_method_id</code>.</p>\n</li>\n<li><p><strong>Create an HKD Payment</strong> for the above <code>payment_method_id</code> using this request (<code>POST /payments</code>)<code>.</code></p>\n<ol>\n<li>This request includes a specific <code>X-Finverse-Testing</code> = <code>DBS_BACKOFFICE_ERROR_RJCT_AM04</code> header which will force the Mandate payment to fail.</li>\n</ol>\n</li>\n<li><p>Retrieve the async Payment result (via <code>GET /payments/{payment_id}</code> or payment webhooks).</p>\n</li>\n</ol>\n<h2 id=\"response-fields\">Response fields</h2>\n<p>The response is a Payment object with status = <code>PROCESSING</code>.</p>\n<p>Refer to Payment object data model in <code>GET /payments/{payment_id}</code>.</p>\n","urlObject":{"path":["payments"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"bb245104-fdf0-49f7-b1f0-822a9d5cdaf0","name":"Created payment (async error case: PAYMENT_REJECTED)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"2b9ec05c-0e94-497d-b2c9-06e7f282ea87","description":"String, required. See request documentation."},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. See request documentation."},{"key":"X-Finverse-Testing","value":"DBS_BACKOFFICE_ERROR_RJCT_AM04","description":"String, optional. See request documentation."}],"body":{"mode":"raw","raw":"{\n    \"amount\": 500,\n    \"currency\": \"HKD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {    \n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1777634238\"\n        //\"transaction_reference_id\": \"1777634238\"\n    },\n    \"payment_method_id\": \"{{payment_method_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payments"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1740142206"},{"key":"Date","value":"Fri, 21 Feb 2025 12:50:11 GMT"},{"key":"Content-Length","value":"1447"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 500,\n    \"amount_total_with_surcharge\": 500,\n    \"created_at\": \"2025-02-21T12:50:11.454Z\",\n    \"currency\": \"HKD\",\n    \"fees\": [\n        {\n            \"amount\": 500,\n            \"currency\": \"HKD\",\n            \"paid_by\": \"RECIPIENT\",\n            \"paid_by_account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\"\n        }\n    ],\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"payment_details\": {\n        \"collection_entity_name\": \"Finverse Technologies Limited\",\n        \"description\": \"Test payment\",\n        \"external_transaction_reference\": \"1740142206\",\n        \"mandate_id\": \"01JMM75577DFW6GQ63A11PZ6YZ\",\n        \"processor_entity_name\": \"Finverse Technologies Limited\",\n        \"transaction_reference_id\": \"1740142206\"\n    },\n    \"payment_id\": \"01JMM8XW2AYWGKARERMP2W9E84\",\n    \"payment_method_id\": \"01JMM755BVX0N577AYTW8D3YAN\",\n    \"recipient\": {\n        \"name\": \"Demo App\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"sender\": {\n        \"external_user_id\": \"user_id_1_{{timestamp}}\",\n        \"name\": \"John Doe\",\n        \"user_details\": [],\n        \"user_id\": \"01JMM755APSP5RMY58HKKH01T9\",\n        \"user_type\": \"INDIVIDUAL\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"01JMM77JQ40RAZTXFFR0313XSB\",\n        \"account_number\": {\n            \"number\": \"01JMM77K2MPDTJVGZWPE2MEZAE\",\n            \"type\": \"LOCAL\"\n        },\n        \"account_number_masked\": \"309XXXXXX9494\",\n        \"account_type\": \"EXTERNAL_ACCOUNT\",\n        \"accountholder_name\": \"01JMM77K1QM1B81QJA9Z1XTNV0\",\n        \"bank_code\": \"420\",\n        \"institution_id\": \"testbank-dbs-hk\",\n        \"institution_name\": \"Testbank (HK) Payments - Personal\",\n        \"user_id\": \"01JMM755APSP5RMY58HKKH01T9\"\n    },\n    \"status\": \"PROCESSING\",\n    \"surcharge_amount\": 0,\n    \"type\": \"MANDATE\",\n    \"updated_at\": \"2025-02-21T12:50:11.454Z\"\n}"}],"_postman_id":"517e6de4-ce9e-4dd5-b278-45c7d8f30e60"}],"id":"c34e4fc3-3eff-489a-992d-e500a9380745","_postman_id":"c34e4fc3-3eff-489a-992d-e500a9380745","description":""},{"name":"03 - Payments: Manual payments","item":[{"name":"Update Manual Payment status","event":[{"listen":"test","script":{"id":"1eebe477-200d-4eb5-ab9e-1aa432c3ac3a","exec":["//var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","//if(jsonData.error) {","//    console.log(\"error:\", jsonData.error)","//};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code >= 400) {","    var jsonData = pm.response.json();","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","if(pm.response.code >= 400) {","    pm.test('Response schema is valid', function() {","    pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","    });","}","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"37542eab-6540-4492-a2e2-a9cd5681f13d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"status\": \"EXECUTED\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/testing/payments/{{payment_id}}/status","description":"<p>Update a test manual payment (e.g. FPS, PayNow) to status = <code>EXECUTED</code>, by simulating manually transferring the specified payment to the Finverse Testbank.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h3 id=\"testing-use-case\">Testing use-case</h3>\n<p><strong>Flow: Manual payments</strong></p>\n<ul>\n<li><p>Hong Kong: FPS</p>\n</li>\n<li><p>Singapore: PayNow</p>\n</li>\n</ul>\n<p><strong>Availability</strong>: any manual payment created by a non-live customer app.</p>\n<p><strong>Scenario: Manual payment success</strong></p>\n<ul>\n<li><p>Test case: Finverse/bank confirms the manual payment was successfully received</p>\n</li>\n<li><p>Result: payment <code>status</code> = <code>EXECUTED</code></p>\n</li>\n</ul>\n<p><strong>Testing steps:</strong></p>\n<ol>\n<li><p><strong>Create Payment Link</strong> using <code>POST /payment_links</code>. Note the <code>payment_link_id</code> (also available in the payment link <code>url</code>: e.g. <a href=\"https://pay.prod.finverse.net/link/01HW1V8PX04GHM6Q8ZAR7DPRAT\">https://pay.prod.finverse.net/link/01HW1V8PX04GHM6Q8ZAR7DPRAT</a>)</p>\n</li>\n<li><p><strong>Open the Payment Link UI and select a manual payment method</strong> (e.g. FPS/PayNow)</p>\n<ol>\n<li><p>Click “I have paid” in the Finverse payment UI (if shown)</p>\n</li>\n<li><p>If you are requested to enter your \"Accountholder last name or company name\" to confirm the payment, enter a unique value (duplicate values within the same 15 minute window will prevent the Finverse Testbank from simulating that a unique mock payment has been received).</p>\n</li>\n</ol>\n</li>\n<li><p><strong>Fetch the Payment Link</strong> using <code>GET /payment_links/{payment_link_id}</code>. Note the <code>payment.payment_id</code> value in the Payment Link response. You can also retrieve the created Payment record through the Finverse Dashboard UI (dashboard.finverse.com &gt; Payments).</p>\n</li>\n<li><p><strong>Mark the Payment Link as</strong> <strong><code>EXECUTED</code></strong> using <code>POST /testing/payments/{payment_id}/status</code>.</p>\n</li>\n</ol>\n<h2 id=\"request-parameters\">Request parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>status</td>\n<td>string ENUM</td>\n<td>Status of the payment. Must be <code>EXECUTED</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"response\">Response</h3>\n<p><strong>Success</strong>: <code>HTTP 200</code> with empty body</p>\n","urlObject":{"path":["testing","payments","{{payment_id}}","status"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"df63475a-5200-4b46-823b-9508fc3cff7f","name":"Success","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"status\": \"EXECUTED\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/testing/payments/{{payment_id}}/status"},"status":"OK","code":200,"_postman_previewlanguage":"plain","header":[{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"01J8M3DA77410QP3EKYTD0VPSE"},{"key":"Date","value":"Wed, 25 Sep 2024 08:05:23 GMT"},{"key":"Content-Length","value":"0"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":null}],"_postman_id":"37542eab-6540-4492-a2e2-a9cd5681f13d"}],"id":"80eac0ea-a475-4573-b0c5-286882e040c0","_postman_id":"80eac0ea-a475-4573-b0c5-286882e040c0","description":""}],"id":"342c8e1f-d0bc-48d4-ac54-568a531c231a","_postman_id":"342c8e1f-d0bc-48d4-ac54-568a531c231a","description":""},{"name":"Payment Users and Accounts","item":[{"name":"01 - Manage Payment Users","item":[{"name":"/payment_users (Create Payment User)","event":[{"listen":"test","script":{"id":"8432da03-31ca-4642-95c9-f528d7b7838b","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if(jsonData.user_id) {","    pm.environment.set(\"user_id\", jsonData.user_id)","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Sender ID or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"user_id\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"autopay_consent\": {\"type\":\"boolean\"},","            \"created_at\": {\"type\":\"string\"},","            \"email\": {\"type\":\"string\"},","            \"external_user_id\": {\"type\":\"string\"},","            \"integration_metadata\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"integration_id\": {\"type\":\"string\"},","                    \"rapidstor_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_token\": {\"type\":\"string\"},","                            \"corp_code\": {\"type\":\"string\"},","                            \"i_anniv_days\": {\"type\":\"integer\"}, ","                            \"s_location_code\": {\"type\":\"string\"},","                            \"tenant_default_currency\": {\"type\":\"string\"},","                            \"tenant_id\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"account_token\",","                            \"corp_code\",","                            \"s_location_code\",","                            \"tenant_id\"","                        ]","                    }","                },","                \"required\": [","                    \"integration_id\"","                ]","            },","            \"metadata\": {\"type\":\"object\"},","            \"name\": {\"type\":\"string\"},","            \"next_bill_update\": {\"type\":\"string\"},","            \"user_details\": {","                \"type\":[\"array\",\"null\"],","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"details_type\": {","                            \"type\":\"string\",","                            \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                        },","                        \"values\": {","                            \"type\": \"array\",","                            \"items\": {","                                \"type\": \"string\"","                            }","                        }","                    },","                    \"required\": [","                        \"details_type\",","                        \"values\"","                    ]","                }","            },","            \"updated_at\": {\"type\":\"string\"},","            \"user_id\": {\"type\":\"string\"},","            \"user_type\": {","                \"type\":\"string\",","                \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","            }","        },","        \"required\": [","            \"created_at\",","            \"external_user_id\",","            \"name\",","            \"user_details\",","            \"updated_at\",","            \"user_id\",","            \"user_type\",","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"49d9e2a1-f4cd-4b72-9a47-e006f19e1f97","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"autopay_consent\": true,\n    \"email\": \"info+test@finverse.com\",\n    \"external_user_id\": \"unique_user_id_1777634238\",\n    //\"integration_metadata\": {\n    //    \"integration_id\": \"RAPIDSTOR\", \n        // Required for Sitelink/Rapidstor self-storage ERP integrations (custom integration, contact support@finverse.com to setup)\n    //    \"rapidstor_metadata\": {\n    //        \"account_token\": \"{{account_token}}\",\n    //        \"corp_code\": \"{{corp_code}}\",\n    //        \"s_location_code\": \"{{s_location_code}}\",\n    //        \"tenant_default_currency\": \"HKD\",\n    //        \"tenant_id\": \"{{tenant_id}}\"\n    //    }\n    //},\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"name\": \"{{sender_accountholder_name}}\",\n    //\"user_details\": [\n    //    {\n    //        \"details_type\": \"{{sender_id_type}}\",\n    //        \"values\": [\"{{sender_id_number}}\"]\n    //    }\n    //],\n    \"user_type\": \"INDIVIDUAL\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_users/","description":"<p>Create a new Payment User to setup mandates or collect payments.</p>\n<p><strong>Access:</strong> This flow is available on demand for Finverse customers who want to directly manage Payment Users and Payment Accounts. Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> to request access.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"request-body\">Request body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>autopay_consent</td>\n<td>boolean, optional</td>\n<td>Flag indicating whether the user has agreed to future (on-demand) payments of bills/invoices owed by the user.  <br />  <br />Value is <code>false</code> by default.</td>\n</tr>\n<tr>\n<td>email</td>\n<td>String, optional</td>\n<td>Payment User's contact email, used for Finverse notifications.  <br />  <br />To ensure a smooth payment experience for end-users and to avoid support tickets or disputes, we strongly recommend enabling Finverse notifications by providing the end-user's email.  <br />  <br />Finverse sends email notifications for:  <br />- Changes to stored payment methods (e.g. direct debit mandate or card)  <br />- Changes to user autopay consent  <br />- Executed payments (except card payments via Stripe, since Stripe sends its own notifications).  <br />  <br />Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> for the full list of email notifications sent by Finverse.</td>\n</tr>\n<tr>\n<td>external_user_id</td>\n<td>string, required</td>\n<td>Customer App's unique ID for the user.  <br />  <br />This ID is used to identify returning users across user sessions and load the user's previously stored Payment Method and settings. For example, a returning user can:  <br />- Directly pay a Payment Link (in <code>mode</code>= <code>payment</code>) using their stored Payment Method, without re-entering payment details. - Use a Payment Link to edit their stored Payment Method.  <br />- Use a Payment Link to turn Autopay on/off (by editing their Autopay consent), if allowed by the Customer App.</td>\n</tr>\n<tr>\n<td>integration_metadata</td>\n<td>object, optional</td>\n<td>Optional parameters to pass custom values for Finverse-supported integrations (e.g. ERP/CRM/accounting integrations). See below.</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format. E.g. <code>employer_name</code>: <code>Apple Inc</code></td>\n</tr>\n<tr>\n<td>name</td>\n<td>string, required</td>\n<td>User's name or nickname (note: this does not need to exactly match the accountholder name of the user's accounts; however accountholder name inputs may be verified against this value).</td>\n</tr>\n<tr>\n<td>user_details</td>\n<td>array of objects, optional</td>\n<td>Additional information about the user's identity. See below.</td>\n</tr>\n<tr>\n<td>user_type</td>\n<td>string ENUM, optional</td>\n<td>Type of user (used to determine what authentication inputs are required, e.g. individual ID vs. company registration details). Possible values: <code>INDIVIDUAL</code>, <code>BUSINESS</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"integration_metadata-object-optional\">integration_metadata (object, optional)</h3>\n<p>Use the following optional parameters to pass custom values for Finverse-supported integrations (e.g. ERP/CRM/accounting integrations).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>integration_id</td>\n<td>string ENUM, required</td>\n<td>ID of the specified integration.  <br />  <br /><strong>Accepted values:</strong>  <br />- RAPIDSTOR: SiteLink/Rapidstor property management integration (managed by R6 Digital).</td>\n</tr>\n<tr>\n<td>rapidstor_metadata</td>\n<td>object, conditionally required</td>\n<td>Location and tenant parameters for Rapidstor integration. Contact <code>support@finverse.com</code> for details.  <br />  <br />Required if <code>integration_id</code> = <code>RAPIDSTOR</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"user_details-array-of-objects-optional\">user_details (array of objects, optional)</h3>\n<p>Additional information about the user's identity, used for validating the user's identity &amp; verifying any user-submitted values in the Finverse Link UI.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>details_type</td>\n<td>string ENUM, required</td>\n<td>Type of the user identity information submitted. Possible values: <code>HK_ID</code>, <code>PASSPORT</code>, <code>HK_BUSINESS_REGISTRATION</code>, <code>HK_CERTIFICATE_OF_INCORPORATION</code></td>\n</tr>\n<tr>\n<td>values</td>\n<td>array of strings, required</td>\n<td>Value(s) of the user identity information submitted. Min 1 value required, max 10 values.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-fields\">Response fields</h2>\n<p>The response is a Payment User object.</p>\n<p>Refer to Payment User object data model in <code>GET /payment_users/{user_id}</code>.</p>\n","urlObject":{"path":["payment_users",""],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"7743d68b-dce8-4e8f-9391-522e346ceba5","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"autopay_consent\": true,\n    \"email\": \"info+test@finverse.com\",\n    \"external_user_id\": \"unique_user_id_1777634238\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"name\": \"{{sender_accountholder_name}}\",\n    \"user_details\": [\n        {\n            \"details_type\": \"{{sender_id_type}}\",\n            \"values\": [\"{{sender_id_number}}\"]\n        }\n    ],\n    \"user_type\": \"INDIVIDUAL\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_users/"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1709950534"},{"key":"Date","value":"Sat, 09 Mar 2024 02:15:34 GMT"},{"key":"Content-Length","value":"418"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"autopay_consent\": false,\n    \"created_at\": \"2024-03-09T02:15:34.075Z\",\n    \"external_user_id\": \"unique_user_id_1709950534\",\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"name\": \"John Doe\",\n    \"updated_at\": \"2024-03-09T02:15:34.075Z\",\n    \"user_details\": [\n        {\n            \"details_type\": \"HK_ID\",\n            \"values\": [\n                \"01HRGFX0DE17AE13FCTEDTTS0Z\"\n            ]\n        }\n    ],\n    \"user_id\": \"01HRGFX0C1KDDXZTA71V085MDX\",\n    \"user_type\": \"INDIVIDUAL\"\n}"},{"id":"21cea8c4-31b2-4081-bc5a-8229a47e50c1","name":"Error (missing name)","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"sender_details\": [\n        {\n            \"details_type\": \"{{sender_id_type}}\",\n            \"values\": [\"{{sender_id_number}}\"]\n        }\n    ],\n    \"user_id\": \"user_id_1\",\n    \"user_type\": \"INDIVIDUAL\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_users/"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Mon, 12 Dec 2022 05:22:14 GMT"},{"key":"Content-Length","value":"279"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"name in body is required\",\n        \"error_code\": \"INVALID_PARAMETER\",\n        \"message\": \"The parameters provided are invalid. See details.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"9ebb15c6-ce5a-421e-acf3-4eb78da4cae2","name":"Error (duplicate User ID)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"email\": \"name@example.com\",\n    \"external_user_id\": \"user_id_1\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"name\": \"{{sender_accountholder_name}}\",\n    \"user_details\": [\n        {\n            \"details_type\": \"{{sender_id_type}}\",\n            \"values\": [\"{{sender_id_number}}\"]\n        }\n    ],\n    \"user_type\": \"INDIVIDUAL\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_users/"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1695211687"},{"key":"Date","value":"Wed, 20 Sep 2023 12:08:07 GMT"},{"key":"Content-Length","value":"249"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"error when creating paymentUser\",\n        \"error_code\": \"INTERNAL_SERVER_ERROR\",\n        \"message\": \"We encountered an internal error. Please contact Finverse customer support for further assistance.\",\n        \"request_id\": \"1695211687\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"747c3bc3-d2f4-41e6-8d56-6d4d738a6a3e","name":"Error (missing permissions for this endpoint)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"email\": \"name@example.com\",\n    \"external_user_id\": \"unique_user_id_1777634238\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"name\": \"{{sender_accountholder_name}}\",\n    \"user_details\": [\n        {\n            \"details_type\": \"{{sender_id_type}}\",\n            \"values\": [\"{{sender_id_number}}\"]\n        }\n    ],\n    \"user_type\": \"INDIVIDUAL\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_users/"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1696435841"},{"key":"Date","value":"Wed, 04 Oct 2023 16:10:40 GMT"},{"key":"Content-Length","value":"284"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 401,\n    \"error\": {\n        \"code\": \"NOT_AUTHORIZED\",\n        \"details\": \"Invalid bearer token\",\n        \"error_code\": \"NOT_AUTHORIZED\",\n        \"message\": \"Authorization failed. Please review authorization requirements in API documentation.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    },\n    \"message\": \"Invalid bearer token\"\n}"}],"_postman_id":"49d9e2a1-f4cd-4b72-9a47-e006f19e1f97"},{"name":"/payment_users/{id} (Update Payment User)","event":[{"listen":"test","script":{"id":"8432da03-31ca-4642-95c9-f528d7b7838b","exec":["var jsonData = pm.response.json();","","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Sender ID or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"user_id\",","        \"error\"","    )","});","","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"autopay_consent\": {\"type\":\"boolean\"},","            \"created_at\": {\"type\":\"string\"},","            \"email\": {\"type\":\"string\"},","            \"external_user_id\": {\"type\":\"string\"},","            \"integration_metadata\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"integration_id\": {\"type\":\"string\"},","                    \"rapidstor_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_token\": {\"type\":\"string\"},","                            \"corp_code\": {\"type\":\"string\"},","                            \"i_anniv_days\": {\"type\":\"integer\"}, ","                            \"s_location_code\": {\"type\":\"string\"},","                            \"tenant_default_currency\": {\"type\":\"string\"},","                            \"tenant_id\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"account_token\",","                            \"corp_code\",","                            \"s_location_code\",","                            \"tenant_id\"","                        ]","                    }","                },","                \"required\": [","                    \"integration_id\"","                ]","            },","            \"metadata\": {\"type\":\"object\"},","            \"name\": {\"type\":\"string\"},","            \"next_bill_update\": {\"type\":\"string\"},","            \"user_details\": {","                \"type\":[\"array\",\"null\"],","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"details_type\": {","                            \"type\":\"string\",","                            \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                        },","                        \"values\": {","                            \"type\": \"array\",","                            \"items\": {","                                \"type\": \"string\"","                            }","                        }","                    },","                    \"required\": [","                        \"details_type\",","                        \"values\"","                    ]","                }","            },","            \"updated_at\": {\"type\":\"string\"},","            \"user_id\": {\"type\":\"string\"},","            \"user_type\": {","                \"type\":\"string\",","                \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","            }","        },","        \"required\": [","            \"created_at\",","            \"external_user_id\",","            \"name\",","            \"user_details\",","            \"updated_at\",","            \"user_id\",","            \"user_type\",","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"c33dfdf7-43fc-4cab-b95a-76b5fb40d16d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\n//    \"autopay_consent\": true,\n//    \"email\": \"info+test-new-email@finverse.com\",\n//    \"integration_metadata\": { // CURRENTLY NOT SUPPORTED\n//        \"integration_id\": \"RAPIDSTOR\",\n//        \"rapidstor_metadata\": {\n//            \"account_token\": \"2af1f28e4b85975f00241662a5c79abfbbb418d729bd964e84157c57db6f2a81\",\n//            \"corp_code\": \"CNCK\",\n//            \"i_anniv_days\": 1,\n//            \"s_location_code\": \"L005\",\n//            \"tenant_default_currency\": \"HKD\",\n//            \"tenant_id\": \"423804\"\n//        }\n//    },\n//    \"metadata\": {\n//        \"key\": \"value\",\n//        \"employer_name\": \"Apple Inc\"\n//    },\n //   \"name\": \"{{sender_accountholder_name}}\",\n    \"next_bill_update\": \"2025-12-01T00:00:00.000Z\"\n//    \"user_type\": \"INDIVIDUAL\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_users/{{user_id}}","description":"<p>Update (PATCH) an existing Payment User, identified by the user's Finverse <code>user_id</code>.</p>\n<p><strong>Access:</strong> This flow is available on demand for Finverse customers who want to directly manage Payment Users and Payment Accounts. Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> to request access.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"implementation-guidance\">Implementation guidance</h2>\n<p><strong>Autopay consent handling:</strong> be careful when updating the value of a user's <code>autopay_consent</code> field. Key considerations:</p>\n<ol>\n<li><p><strong>The</strong> <strong><code>autopay_consent</code></strong> <strong>field should only be set to</strong> <strong><code>true</code></strong> <strong>if the user has specifically agreed to autopay future bills.</strong> We recommend preserving auditable evidence that users have provided this consent (e.g. in your logs or database records), which may be later requested by payment gateways or banks in the event of user billing disputes.</p>\n</li>\n<li><p><strong>User notifications of change to</strong> <strong><code>autopay_consent</code>****:</strong> Finverse will send an email notification to the user's <code>email</code> each time the <code>autopay_consent</code> value is changed (e.g. from <code>true</code> to <code>false</code>, or <code>false</code> to <code>true</code>), to ensure that users are aware about whether their bills will be autopaid.</p>\n</li>\n<li><p><strong>Autopay downstream handling:</strong> the way <code>autopay_consent</code> impacts future bill collections depends on your specific integration with Finverse.</p>\n<ol>\n<li><p>If you have enabled a pre-built Finverse autopay integration (e.g. via Xero invoices, Sitelink/Rapidstor tenant ledgers, Storeganise invoices), Finverse will automatically handle autopayments on each bill due date for any users where (i) <code>autopay_consent</code> = <code>true</code>, and (ii) the user has at least 1 valid payment method.</p>\n</li>\n<li><p>If you are using a custom Finverse autopay integration, you need to initiate your own collection payment on your desired due date using the Finverse API, via <code>POST /payments</code>. Depending on your Customer App's configuration, Finverse may verify that the user's <code>autopay_consent</code> = <code>true</code> before processing each payment.</p>\n</li>\n</ol>\n</li>\n</ol>\n<h2 id=\"request-body\">Request body</h2>\n<p>Only the selected fields below can currently be updated. Any omitted fields will remain unchanged.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>autopay_consent</td>\n<td>boolean, optional</td>\n<td>Flag indicating whether the user has agreed to future (on-demand) payments of bills/invoices owed by the user.</td>\n</tr>\n<tr>\n<td>email</td>\n<td>string, optional</td>\n<td>Payment User's contact email, used for Finverse notifications.  <br />  <br />To ensure a smooth payment experience for end-users and to avoid support tickets or disputes, we strongly recommend enabling Finverse notifications by providing the end-user's email.  <br />  <br />Finverse sends email notifications for:  <br />- Changes to stored payment methods (e.g. direct debit mandate or card)  <br />- Changes to user autopay consent  <br />- Executed payments (except card payments via Stripe, since Stripe sends its own notifications).  <br />  <br />Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> for the full list of email notifications sent by Finverse.</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format. E.g. <code>employer_name</code>: <code>Apple Inc</code>.  <br />  <br />Updating this object overwrites the full existing object.</td>\n</tr>\n<tr>\n<td>name</td>\n<td>string, optional</td>\n<td>User's name or nickname (note: this does not need to exactly match the accountholder name of the user's accounts; however accountholder name inputs may be verified against this value).</td>\n</tr>\n<tr>\n<td>next_bill_update</td>\n<td>string (ISO 8601 timestamp: date-time), optional</td>\n<td>Timestamp when Finverse is scheduled to attempt to fetch the next bill/invoice for this user.  <br />  <br />Bill/invoice ingestion is one of the available methods for Finverse to initiate Autopay bill collections on each bill due date, using the user's saved payment method(s).  <br />  <br />Note: bills will only be fetched if the Customer App has configured a 3rd party ERP/CRM or Accounting integration, enabling Finverse to fetch bill/invoice data from the 3rd party source (e.g. Xero, RapidStor). Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> to discuss 3rd party bill/invoice integrations and Autopay flows.</td>\n</tr>\n<tr>\n<td>user_type</td>\n<td>string ENUM, optional</td>\n<td>Type of user (used to determine what authentication inputs are required, e.g. individual ID vs. company registration details). Possible values: <code>INDIVIDUAL</code>, <code>BUSINESS</code></td>\n</tr>\n</tbody>\n</table>\n</div><p>The following fields are non-editable. Attempting to edit these will return an API error:</p>\n<p><code>created_at</code>, <code>external_user_id</code>, <code>integration_metadata</code>, <code>updated_at</code>, <code>user_details</code>, <code>user_id</code></p>\n<h3 id=\"response-fields\">Response fields</h3>\n<p>The response is the updated Payment User object.</p>\n<p>Refer to Payment User object data model in <code>GET /payment_users/{user_id}</code>.</p>\n","urlObject":{"path":["payment_users","{{user_id}}"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"e9ee9eb4-f479-42d9-9feb-1daf947deee9","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"autopay_consent\": true,\n    \"email\": \"info+test-new-email@finverse.com\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"name\": \"{{sender_accountholder_name}}\",\n    \"next_bill_update\": \"2024-12-02T00:06:00.000Z\",\n    \"user_type\": \"INDIVIDUAL\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_users/{{user_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1729069078"},{"key":"Date","value":"Wed, 16 Oct 2024 08:57:59 GMT"},{"key":"Content-Length","value":"460"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"autopay_consent\": true,\n    \"created_at\": \"2024-10-16T08:57:06.155Z\",\n    \"email\": \"info+test-new-email@finverse.com\",\n    \"external_user_id\": \"unique_user_id_1729069025\",\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"name\": \"John Doe\",\n    \"next_bill_update\": \"2024-12-02T00:06:00.000Z\",\n    \"updated_at\": \"2024-10-16T08:57:59.092Z\",\n    \"user_details\": [\n        {\n            \"details_type\": \"HK_ID\",\n            \"values\": [\n                \"01JAA8Q2TW1S7K84D8YCHXM0KP\"\n            ]\n        }\n    ],\n    \"user_id\": \"01JAA8Q2PATMCX4V8M0KKMYW1C\",\n    \"user_type\": \"INDIVIDUAL\"\n}"},{"id":"f1782950-bb99-4d2b-8841-8c2ecf42e285","name":"Error (attempted to update non-updatable field)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"autopay_consent\": true,\n    \"email\": \"info+test-new-email@finverse.com\",\n    \"external_user_id\": \"unique_user_id_1729069025_new_id\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"name\": \"{{sender_accountholder_name}}\",\n    \"next_bill_update\": \"2024-12-02T00:06:00.000Z\",\n    \"user_type\": \"INDIVIDUAL\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_users/{{user_id}}"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1729069151"},{"key":"Date","value":"Wed, 16 Oct 2024 08:59:11 GMT"},{"key":"Content-Length","value":"225"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"unsupported field external_user_id supplied for update\",\n        \"error_code\": \"INVALID_INPUT\",\n        \"message\": \"Invalid parameter value(s). Please review parameter inputs.\",\n        \"request_id\": \"1729069151\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"c33dfdf7-43fc-4cab-b95a-76b5fb40d16d"},{"name":"/payment_users/{id} (Get Payment User)","event":[{"listen":"test","script":{"id":"286c9460-d3f7-4fdf-94f6-c63d976b6c15","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Sender ID or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"user_id\",","        \"error\"","    )","});","","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"autopay_consent\": {\"type\":\"boolean\"},","            \"created_at\": {\"type\":\"string\"},","            \"email\": {\"type\":\"string\"},","            \"external_user_id\": {\"type\":\"string\"},","            \"integration_metadata\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"integration_id\": {\"type\":\"string\"},","                    \"rapidstor_metadata\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"account_token\": {\"type\":\"string\"},","                            \"corp_code\": {\"type\":\"string\"},","                            \"i_anniv_days\": {\"type\":\"integer\"}, ","                            \"s_location_code\": {\"type\":\"string\"},","                            \"tenant_default_currency\": {\"type\":\"string\"},","                            \"tenant_id\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"account_token\",","                            \"corp_code\",","                            \"s_location_code\",","                            \"tenant_id\"","                        ]","                    }","                },","                \"required\": [","                    \"integration_id\"","                ]","            },","            \"metadata\": {\"type\":\"object\"},","            \"name\": {\"type\":\"string\"},","            \"next_bill_update\": {\"type\":\"string\"},","            \"user_details\": {","                \"type\":[\"array\",\"null\"],","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"details_type\": {","                            \"type\":\"string\",","                            \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                        },","                        \"values\": {","                            \"type\": \"array\",","                            \"items\": {","                                \"type\": \"string\"","                            }","                        }","                    },","                    \"required\": [","                        \"details_type\",","                        \"values\"","                    ]","                }","            },","            \"updated_at\": {\"type\":\"string\"},","            \"user_id\": {\"type\":\"string\"},","            \"user_type\": {","                \"type\":\"string\",","                \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","            }","        },","        \"required\": [","            \"created_at\",","            \"external_user_id\",","            \"name\",","            \"user_details\",","            \"updated_at\",","            \"user_id\",","            \"user_type\",","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}},{"listen":"prerequest","script":{"id":"c7f5df78-a912-4aaf-af46-5c11821df401","exec":[""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"b174d384-6845-4a54-9438-62219713ae56","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/payment_users/{{user_id}}","description":"<p>Retrieve a Payment User object (using a specific <code>user_id</code>).</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"response-fields\">Response fields</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>autopay_consent</td>\n<td>boolean</td>\n<td>Flag indicating whether the user has agreed to future (on-demand) payments of bills/invoices owed by the user. This consent is usually collected in the Payment Link flow.  <br />  <br />Value is <code>false</code> by default, unless: (i) the user enrolled into Autopay in the Payment Link UI, (ii) a Payment LInk was created with the configuration <code>payment_setup_options.future_payments</code> = <code>AUTOPAY</code>, (iii) the Payment User was created with <code>autopay_consent</code> = <code>true</code> using the Create Payment User API (<code>POST /payment_users</code>).</td>\n</tr>\n<tr>\n<td>created_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp when the Payment User object was first created</td>\n</tr>\n<tr>\n<td>email</td>\n<td>string, optional</td>\n<td>Payment User's contact email, used for Finverse notifications.  <br />  <br />To ensure a smooth payment experience for end-users and to avoid support tickets or disputes, we strongly recommend enabling Finverse notifications by providing the end-user's email.  <br />  <br />Finverse sends email notifications for:  <br />- Changes to stored payment methods (e.g. direct debit mandate or card)  <br />- Changes to user autopay consent  <br />- Executed payments (except card payments via Stripe, since Stripe sends its own notifications).  <br />  <br />Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> for the full list of email notifications sent by Finverse.</td>\n</tr>\n<tr>\n<td>external_user_id</td>\n<td>string</td>\n<td>Customer App's unique ID for the user.  <br />  <br />This ID is used to identify returning users across user sessions and load the user's previously stored Payment Method and settings. For example, a returning user can:  <br />- Directly pay a Payment Link (in <code>mode</code>= <code>payment</code>) using their stored Payment Method, without re-entering payment details. - Use a Payment Link to edit their stored Payment Method.  <br />- Use a Payment Link to turn Autopay on/off (by editing their Autopay consent), if allowed by the Customer App.</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format. E.g. <code>employer_name</code>: <code>Apple Inc</code></td>\n</tr>\n<tr>\n<td>name</td>\n<td>string</td>\n<td>User's name or nickname (note: this does not need to exactly match the accountholder name of the user's account; however accountholder name inputs may be verified against this value).</td>\n</tr>\n<tr>\n<td>next_bill_update</td>\n<td>string (ISO 8601 timestamp: date-time), optional</td>\n<td>Timestamp when Finverse is scheduled to attempt to fetch the next bill/invoice for this user.  <br />  <br />Bill/invoice ingestion is one of the available methods for Finverse to initiate Autopay bill collections on each bill due date, using the user's saved payment method(s).  <br />  <br />Note: bills will only be fetched if the Customer App has configured a 3rd party ERP/CRM or Accounting integration, enabling Finverse to fetch bill/invoice data from the 3rd party source (e.g. Xero, RapidStor). Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> to discuss 3rd party bill/invoice integrations and Autopay flows.</td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp when the Payment User object was last updated</td>\n</tr>\n<tr>\n<td>user_details</td>\n<td>array of objects, optional</td>\n<td>Additional information about the user's identity. See below.</td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>string (ULID)</td>\n<td>Finverse unique ID for the user.</td>\n</tr>\n<tr>\n<td>user_type</td>\n<td>string ENUM, optional</td>\n<td>Type of user (used to determine what user authentication inputs are required, e.g. individual ID vs. company registration details). Possible values: <code>INDIVIDUAL</code>, <code>BUSINESS</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"user_details-array-of-objects-optional\">user_details (array of objects, optional)</h3>\n<p>Additional information about the user's identity, used for validating any end-user submitted identity details in the Finverse Link UI.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>details_type</td>\n<td>string ENUM</td>\n<td>Type of the user identity information submitted. Possible values: <code>HK_ID</code>, <code>PASSPORT</code>, <code>HK_BUSINESS_REGISTRATION</code>, <code>HK_CERTIFICATE_OF_INCORPORATION</code>, <code>ACCOUNTHOLDER_NAME</code></td>\n</tr>\n<tr>\n<td>values</td>\n<td>array of strings</td>\n<td>Value(s) of the user identity information submitted. Min 1 value required, max 10 values.  <br />  <br />Values in responses are tokenized by Finverse.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["payment_users","{{user_id}}"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"5d8492b5-1119-482c-8111-df7f10422d81","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/payment_users/{{user_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1709950655"},{"key":"Date","value":"Sat, 09 Mar 2024 02:17:35 GMT"},{"key":"Content-Length","value":"451"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"autopay_consent\": false,\n    \"created_at\": \"2024-03-09T02:15:34.075Z\",\n    \"email\": \"info+test@finverse.com\",\n    \"external_user_id\": \"unique_user_id_1709950534\",\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"name\": \"John Doe\",\n    \"next_bill_update\": \"2024-03-09T02:15:34.071Z\",\n    \"updated_at\": \"2024-03-09T02:15:34.075Z\",\n    \"user_details\": [\n        {\n            \"details_type\": \"HK_ID\",\n            \"values\": [\n                \"01HRGFX0DE17AE13FCTEDTTS0Z\"\n            ]\n        }\n    ],\n    \"user_id\": \"01HRGFX0C1KDDXZTA71V085MDX\",\n    \"user_type\": \"INDIVIDUAL\"\n}"},{"id":"50ac1e40-0b84-4c68-ac7d-1603aab17ea6","name":"Success (with integration metadata)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/payment_users/{{user_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1731659026"},{"key":"Date","value":"Fri, 15 Nov 2024 08:23:45 GMT"},{"key":"Content-Length","value":"536"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"autopay_consent\": false,\n    \"created_at\": \"2024-11-15T07:57:27.345Z\",\n    \"email\": \"info+test@finverse.com\",\n    \"external_user_id\": \"user_id_1||1731657447\",\n    \"integration_metadata\": {\n        \"integration_id\": \"RAPIDSTOR\",\n        \"rapidstor_metadata\": {\n            \"account_token\": \"abcdef123456\",\n            \"corp_code\": \"{{corp_code}}\",\n            \"i_anniv_days\": 16,\n            \"s_location_code\": \"{{s_location_code}}\",\n            \"tenant_default_currency\": \"HKD\",\n            \"tenant_id\": \"{{tenant_id}}\"\n        }\n    },\n    \"name\": \"John Doe\",\n    \"updated_at\": \"2024-11-15T08:06:54.271Z\",\n    \"user_details\": [],\n    \"user_id\": \"01JCQD7DXHHW62Q1DW96HK1EAZ\",\n    \"user_type\": \"INDIVIDUAL\"\n}"},{"id":"0f7f85cb-a6c9-4676-ab9d-3ac9fb5e1d4e","name":"Error (User not found)","originalRequest":{"method":"GET","header":[],"url":"https://api.prod.finverse.net/payment_users/{{sender_id2}}2"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Mon, 12 Dec 2022 05:21:29 GMT"},{"key":"Content-Length","value":"248"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"paymentUser_id cannot be found\",\n        \"error_code\": \"RESOURCE_NOT_FOUND\",\n        \"message\": \"Resource cannot be found. Resource does not exist, has been deleted, or is not accessible.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"b174d384-6845-4a54-9438-62219713ae56"}],"id":"b8139936-4c55-46ae-bb50-57bf6c0bbb63","_postman_id":"b8139936-4c55-46ae-bb50-57bf6c0bbb63","description":""},{"name":"02 - Manage Payment Accounts","item":[{"name":"/payment_accounts (Create Payment Account)","event":[{"listen":"test","script":{"id":"8fbb3531-3271-4e7b-911e-ada3022e134a","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if(jsonData.account_id) {","    pm.environment.set(\"payment_account_id\", jsonData.account_id)","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Sender Account ID or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"account_id\",","        \"error\"","    )","});","","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"account_id\": {\"type\":\"string\"},","            \"account_number\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"number\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"IBAN\", \"LOCAL\"]","                    }","                },","                \"required\": [","                    \"number\",","                    \"type\"","                ]","            },","            \"account_number_masked\": {\"type\":\"string\"},","            \"account_type\": {","                \"type\":\"string\",","                \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","            },","            \"accountholder_name\": {\"type\":\"string\"},","            \"bank_code\": {\"type\":\"string\"},","            \"business_units\": {","                \"type\":\"array\"","            },","            \"created_at\": {\"type\":\"string\"},","            \"currencies\": {\"type\":[\"array\", \"null\"]},","            \"created_at\": {\"type\":\"string\"},","            \"customer_app_id\": {\"type\":\"string\"},","            \"institution_id\": {\"type\":\"string\"},","            \"institution_name\": {\"type\":\"string\"},","            \"metadata\": {\"type\":\"object\"},","            \"updated_at\": {\"type\":\"string\"},","            \"user_id\": {\"type\":\"string\"}","        },","        \"required\": [","            \"account_id\",","            \"account_number\",","            \"account_number_masked\",","            \"account_type\",","            \"created_at\",","            \"customer_app_id\",","            \"institution_id\",","            \"institution_name\",","            \"updated_at\",","            \"user_id\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"7a370faf-1574-491b-b0f2-7668add11797","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"body":{"mode":"raw","raw":"{\n    \"account_number\": {\n         \"type\": \"LOCAL\",\n         \"number\": \"1234567890\"\n    },\n    //\"account_number_masked\": \"1234567890\",\n    \"account_type\": \"EXTERNAL_ACCOUNT\",\n    \"accountholder_name\": \"Gocardless Test Account\",\n    \"currencies\": [\"{{mandate_currency}}\"],\n    \"institution_id\": \"testbank\",\n    // \"metadata\": {\n    //     \"key\": \"value\",\n    //     \"employer_name\": \"Apple Inc\"\n    // },\n    \"user_id\": \"{{user_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_accounts/","description":"<p>Create a new Payment Account for Mandates, Payments or Payouts.</p>\n<p><strong>Access:</strong> This flow is available on demand for Finverse customers who want to directly manage Payment Users and Payment Accounts. Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> to request access.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"request-body\">Request body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>account_number</td>\n<td>object, optional</td>\n<td>Bank account number details. See below.</td>\n</tr>\n<tr>\n<td>account_number_masked</td>\n<td>string, optional</td>\n<td>Masked/partial account number (e.g. 101XXXXX1234, **41, 51).  <br />  <br />Note: When <code>account_number</code> object is provided, <code>account_number_masked</code> is automatically generated by Finverse, and an API error will be returned if <code>account_number_masked</code> is included in the request.</td>\n</tr>\n<tr>\n<td>account_type</td>\n<td>string ENUM, required</td>\n<td>Type of account. Possible values: <code>EXTERNAL_ACCOUNT</code></td>\n</tr>\n<tr>\n<td>accountholder_name</td>\n<td>string, required</td>\n<td>Accountholder name</td>\n</tr>\n<tr>\n<td>institution_id</td>\n<td>string, required</td>\n<td>Finverse Institution ID for the account's institution</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format. E.g. <code>employer_name</code>: <code>Apple Inc</code></td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>string, required</td>\n<td>Finverse unique ID for the user. See <code>POST /payment_users</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"account_number-object-required\">account_number (object, required)</h3>\n<p>Bank account number details.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>number</td>\n<td>string, required</td>\n<td>Account number</td>\n</tr>\n<tr>\n<td>type</td>\n<td>string ENUM, required</td>\n<td>Type of account number format. Possible values: <code>IBAN</code>, <code>LOCAL</code></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-fields\">Response fields</h2>\n<p>The response is a Payment Account object.</p>\n<p>Refer to Payment Account object data model in <code>GET /payment_users/{user_id}/payment_accounts</code>.</p>\n","urlObject":{"path":["payment_accounts",""],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"1a07580c-929f-4be0-a8bf-441806ee8001","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"account_number\": {\n        \"type\": \"LOCAL\",\n        \"number\": \"502123456833\"\n    },\n    \"account_type\": \"EXTERNAL_ACCOUNT\",\n    \"accountholder_name\": \"Chan Li Pak\",\n    \"currencies\": [\"HKD\", \"CNY\"],\n    \"institution_id\": \"hsbc-hk\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"user_id\": \"{{sender_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_accounts/"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Mon, 12 Dec 2022 10:10:06 GMT"},{"key":"Content-Length","value":"355"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"account_id\": \"01GM2X09ZTV5WZVC3TXVZJCCTQ\",\n    \"account_number\": {\n        \"number\": \"01GM2X0A1HGECAPWXBMZ8ZZJW2\",\n        \"type\": \"LOCAL\"\n    },\n    \"account_type\": \"EXTERNAL_ACCOUNT\",\n    \"accountholder_name\": \"01GM2X0A0P8F31PBAS8DFHMW00\",\n    \"bank_code\": \"004\",\n    \"branch_code\": \"123\",\n    \"created_at\": \"2022-12-12T10:10:06.006Z\",\n    \"currencies\": [\"HKD\", \"CNY\"],\n    \"institution_id\": \"hsbc-hk\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"updated_at\": \"2022-12-12T10:10:06.006Z\",\n    \"user_id\": \"01GM2CQ5D7GSHGPA73X8NGXCHB\"\n}"},{"id":"3433e710-48ab-4d83-ab44-0517ef88a654","name":"Error (missing permissions for this endpoint)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"account_number\": {\n        \"type\": \"LOCAL\",\n        \"number\": \"502123456833\"\n    },\n    \"account_type\": \"EXTERNAL_ACCOUNT\",\n    \"accountholder_name\": \"Chan Li Pak\",\n    \"currencies\": [\"HKD\", \"CNY\"],\n    \"institution_id\": \"hsbc-hk\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"user_id\": \"{{sender_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payment_accounts/"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1696435841"},{"key":"Date","value":"Wed, 04 Oct 2023 16:10:40 GMT"},{"key":"Content-Length","value":"284"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 401,\n    \"error\": {\n        \"code\": \"NOT_AUTHORIZED\",\n        \"details\": \"Invalid bearer token\",\n        \"error_code\": \"NOT_AUTHORIZED\",\n        \"message\": \"Authorization failed. Please review authorization requirements in API documentation.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    },\n    \"message\": \"Invalid bearer token\"\n}"}],"_postman_id":"7a370faf-1574-491b-b0f2-7668add11797"},{"name":"/payment_accounts (List Payment Accounts for a Payment User)","event":[{"listen":"test","script":{"id":"e545c308-9735-4f1b-8463-912b4e39fae4","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if (jsonData.payment_accounts) {","    if (jsonData.payment_accounts.length > 0) {","        pm.environment.set(\"payment_account_id\", jsonData.payment_accounts[0].account_id)","    }","}","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Sender Accounts or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"payment_accounts\",","        \"error\"","    )","});","","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"payment_accounts\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"account_id\": {\"type\":\"string\"},","                        \"account_number\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"number\": {\"type\":\"string\"},","                                \"type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"IBAN\", \"LOCAL\"]","                                }","                            },","                            \"required\": [","                                \"number\",","                                \"type\"","                            ]","                        },","                        \"account_number_masked\": {\"type\":\"string\"},","                        \"account_type\": {","                            \"type\":\"string\",","                            \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                        },","                        \"accountholder_name\": {\"type\":\"string\"},","                        \"bank_code\": {\"type\":\"string\"},","                        \"business_units\": {","                            \"type\":\"array\"","                        },","                        \"created_at\": {\"type\":\"string\"},","                        \"currencies\": {\"type\":[\"array\", \"null\"]},","                        \"customer_app_id\": {\"type\":\"string\"},","                        \"institution_id\": {\"type\":\"string\"},","                        \"institution_name\": {\"type\":\"string\"},","                        \"legal_entity_name\": {\"type\":\"string\"},","                        \"metadata\": {\"type\":\"object\"},","                        \"updated_at\": {\"type\":\"string\"},","                        \"user_id\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"account_id\",","                        \"account_type\",","                        \"created_at\",","                        \"customer_app_id\",","                        \"updated_at\",","                        \"user_id\"","                    ]","                }","            }","        },","        \"required\": [","            \"payment_accounts\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","","// ADDITIONAL TESTS - START","pm.test(\"At least 1 payment account found\", function() {","    pm.expect(jsonData.payment_accounts.length).to.be.at.least(1)","    });","// ADDITIONAL TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"e97e7095-3322-414c-bcfb-3c17a084b77a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"url":"https://api.prod.finverse.net/payment_users/{{user_id}}/payment_accounts","description":"<p>Retrieve Payment Accounts for a user (using a specific <code>user_id</code>).</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"response-field\">Response field</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>payment_accounts</td>\n<td>array</td>\n<td>Refer to <code>payment_accounts</code> object data model below</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment_accounts-array-of-objects\">payment_accounts (array of objects)</h3>\n<p>List of payment accounts for the Payment User:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>account_id</td>\n<td>string</td>\n<td>Finverse ID for the payment account</td>\n</tr>\n<tr>\n<td>account_number</td>\n<td>object</td>\n<td>Bank account number details. See below.</td>\n</tr>\n<tr>\n<td>account_number_masked</td>\n<td>string</td>\n<td>Masked account number value</td>\n</tr>\n<tr>\n<td>account_type</td>\n<td>string ENUM</td>\n<td>Type of payment account. Possible values: <code>EXTERNAL_ACCOUNT</code></td>\n</tr>\n<tr>\n<td>accountholder_name</td>\n<td>string, optional</td>\n<td>Accountholder name  <br />  <br />Accountholder name value in responses is tokenized by Finverse.</td>\n</tr>\n<tr>\n<td>bank_code</td>\n<td>string, optional</td>\n<td>[HK bank accounts] HK bank code</td>\n</tr>\n<tr>\n<td>branch_code</td>\n<td>string, optional</td>\n<td>[HK bank accounts] HK branch code</td>\n</tr>\n<tr>\n<td>created_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp when the Payment Account object was first created</td>\n</tr>\n<tr>\n<td>currencies</td>\n<td>array of strings</td>\n<td>Currencies supported by the account (e.g. <code>[HKD, CNY]</code>). See below.</td>\n</tr>\n<tr>\n<td>institution_id</td>\n<td>string</td>\n<td>Finverse Institution ID for the payment account's institution</td>\n</tr>\n<tr>\n<td>institution_name</td>\n<td>string</td>\n<td>Institution name for the payment account's institution</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format. E.g. <code>employer_name</code>: <code>Apple Inc</code></td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp when the Payment Account object was last updated</td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>string</td>\n<td>Finverse unique ID for the user. See <code>POST /payment_users</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"account_number-object\">account_number (object)</h3>\n<p>Bank account number details.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>number</td>\n<td>string</td>\n<td>Account number.  <br />  <br />Account numbers in responses are tokenized by Finverse.</td>\n</tr>\n<tr>\n<td>type</td>\n<td>string ENUM</td>\n<td>Type of account number format. Possible values: <code>IBAN</code>, <code>LOCAL</code></td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["payment_users","{{user_id}}","payment_accounts"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"5e32d1c6-86ee-4c8e-9869-e527f79244fc","name":"Success","originalRequest":{"method":"GET","header":[],"url":"https://api.prod.finverse.net/payment_users/{{user_id}}/payment_accounts"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Mon, 12 Dec 2022 10:11:12 GMT"},{"key":"Content-Length","value":"1088"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"payment_accounts\": [\n        {\n            \"account_id\": \"01GM2X15D3N87RDSW5RV57MDVR\",\n            \"account_number\": {\n                \"number\": \"01GM2X15F9SFBYSJ8Y9CZPYB4T\",\n                \"type\": \"LOCAL\"\n            },\n            \"account_type\": \"EXTERNAL_ACCOUNT\",\n            \"accountholder_name\": \"01GM2X15E9W1E9XQQ1ZSS34N2V\",\n            \"bank_code\": \"004\",\n            \"branch_code\": \"123\",\n            \"created_at\": \"2022-12-12T10:10:34.095Z\",\n            \"currencies\": [\"HKD\", \"CNY\"],\n            \"institution_id\": \"testbank\",\n            \"metadata\": {\n                \"key\": \"value\",\n                \"employer_name\": \"Apple Inc\"\n            },\n            \"updated_at\": \"2022-12-12T10:10:34.095Z\",\n            \"user_id\": \"01GM2CQ5D7GSHGPA73X8NGXCHB\"\n        }\n    ]\n}"},{"id":"d3061d89-1921-43e8-81b9-b0ebe57499a8","name":"Error (User not found)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/payment_users/{{user_id}}/payment_accounts"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1695214774"},{"key":"Date","value":"Wed, 20 Sep 2023 12:59:34 GMT"},{"key":"Content-Length","value":"238"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"payment_user_id cannot be found\",\n        \"error_code\": \"RESOURCE_NOT_FOUND\",\n        \"message\": \"Resource cannot be found. Resource does not exist, has been deleted, or is not accessible.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"e97e7095-3322-414c-bcfb-3c17a084b77a"},{"name":"/payment_accounts (List Payment Accounts for Customer App, with payment method overview)","event":[{"listen":"test","script":{"id":"e545c308-9735-4f1b-8463-912b4e39fae4","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Sender Accounts or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"payment_accounts\",","        \"error\"","    )","});","","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"payment_accounts\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"account_id\": {\"type\":\"string\"},","                        \"account_number\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"number\": {\"type\":\"string\"},","                                \"type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"IBAN\", \"LOCAL\"]","                                }","                            },","                            \"required\": [","                                \"number\",","                                \"type\"","                            ]","                        },","                        \"account_number_masked\": {\"type\":\"string\"},","                        \"account_type\": {","                            \"type\":\"string\",","                            \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                        },","                        \"accountholder_name\": {\"type\":\"string\"},","                        \"bank_code\": {\"type\":\"string\"},","                        \"business_units\": {\"type\":\"array\"},","                        \"created_at\": {\"type\":\"string\"},","                        \"currencies\": {\"type\":[\"array\", \"null\"]},","                        \"customer_app_id\": {\"type\":\"string\"},","                        \"institution_id\": {\"type\":\"string\"},","                        \"institution_name\": {\"type\":\"string\"},","                        \"legal_entity_name\": {\"type\":\"string\"},","                        \"metadata\": {\"type\":\"object\"},","                        \"payment_method_overview\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"external_gateway\": {\"type\":\"string\"},","                                \"live_mode\": {\"type\":\"boolean\"},","                                \"payment_confirmation_speed\": {\"type\":\"string\"},","                                \"payment_method_subtype\": {\"type\":\"string\"},","                                \"payment_method_type\": {\"type\":\"string\"},","                                \"payment_processor\": {\"type\":\"string\"},","                                \"supported_currencies\": {\"type\":\"array\"}","                            },","                            \"required\": [","                                \"live_mode\",","                                \"payment_confirmation_speed\",","                                \"payment_method_subtype\",","                                \"payment_method_type\",","                                \"supported_currencies\"","                            ]","                        },","                        \"updated_at\": {\"type\":\"string\"},","                        \"user_id\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"account_id\",","                        \"account_type\",","                        \"created_at\",","                        \"customer_app_id\",","                        \"updated_at\",","                        \"user_id\"","                    ]","                }","            },","            \"total\": {\"type\":\"number\"}","        },","        \"required\": [","            \"payment_accounts\",","            \"total\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","","// ADDITIONAL TESTS - START","pm.test(\"At least 1 payment account found\", function() {","    pm.expect(jsonData.payment_accounts.length).to.be.at.least(1)","    });","// ADDITIONAL TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"50bc0e0e-7f6f-43a6-ab3b-a539037f100e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"url":"https://api.prod.finverse.net/payment_accounts?account_type=SETTLEMENT_ACCOUNT&currencies=HKD,SGD&limit=10&offset=0","description":"<p>Retrieve all Payment Accounts for a Customer App, including for any <code>SETTLEMENT_ACCOUNT</code> the details on the account's payment method configurations (<code>payment_method_overview</code>).</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"response-field\">Response field</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>payment_accounts</td>\n<td>array</td>\n<td>Refer to <code>payment_accounts</code> object data model below</td>\n</tr>\n<tr>\n<td>total</td>\n<td>string</td>\n<td>Total number of Payment Account records available for the selected filtering criteria (can be used to inform pagination requests)</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment_accounts-array-of-objects\">payment_accounts (array of objects)</h3>\n<p>List of payment accounts for the Customer App:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>account_id</td>\n<td>string (ULID)</td>\n<td>Finverse ID for the payment account</td>\n</tr>\n<tr>\n<td>account_number</td>\n<td>object, conditional</td>\n<td>(for <code>account_type</code> = <code>EXTERNAL_ACCOUNT</code> only)  <br />Bank account number details. See <code>GET /payment_users/{user_id}/payment_accounts</code>.</td>\n</tr>\n<tr>\n<td>account_number_masked</td>\n<td>string, conditional</td>\n<td>(for <code>account_type</code> = <code>EXTERNAL_ACCOUNT</code> only)  <br />Masked account number value</td>\n</tr>\n<tr>\n<td>account_type</td>\n<td>string ENUM</td>\n<td>Type of payment account.  <br />  <br />Possible values:  <br />- <code>EXTERNAL_ACCOUNT</code> (external bank accounts associated with Payment Users )  <br />- <code>SETTLEMENT ACCOUNT</code> (internal virtual accounts associated with each payment rail enabled for a Customer App)</td>\n</tr>\n<tr>\n<td>accountholder_name</td>\n<td>string, optional</td>\n<td>(for <code>account_type</code> = <code>EXTERNAL_ACCOUNT</code> only)  <br />Accountholder name  <br />  <br />Accountholder name value in responses is tokenized by Finverse.</td>\n</tr>\n<tr>\n<td>bank_code</td>\n<td>string, optional</td>\n<td>(for <code>account_type</code> = <code>EXTERNAL_ACCOUNT</code> only)  <br />[HK bank accounts] HK bank code</td>\n</tr>\n<tr>\n<td>branch_code</td>\n<td>string, optional</td>\n<td>(for <code>account_type</code> = <code>EXTERNAL_ACCOUNT</code> only)  <br />[HK bank accounts] HK branch code</td>\n</tr>\n<tr>\n<td>business_units</td>\n<td>array of strings, conditional</td>\n<td>(for <code>account_type</code> = <code>SETTLEMENT_ACCOUNT</code> only)  <br />List of business unit IDs (if any) associated with the settlement account.  <br />  <br />Business unit IDs can be used when creating Payment Links (see <code>POST /payment_links</code>) to filter the available list of payment methods displayed to end-users, in order to route payments to specific settlement accounts or to a target list of settlement accounts.</td>\n</tr>\n<tr>\n<td>created_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp when the Payment Account object was first created</td>\n</tr>\n<tr>\n<td>currencies</td>\n<td>array of strings, conditional</td>\n<td>(for <code>account_type</code> = <code>EXTERNAL_ACCOUNT</code> only)  <br />Currencies supported by the account (e.g. <code>[HKD, CNY]</code>). See below.</td>\n</tr>\n<tr>\n<td>institution_id</td>\n<td>string, conditional</td>\n<td>(for <code>account_type</code> = <code>EXTERNAL_ACCOUNT</code> only)  <br />Finverse Institution ID for the payment account's institution</td>\n</tr>\n<tr>\n<td>institution_name</td>\n<td>string, conditional</td>\n<td>(for <code>account_type</code> = <code>EXTERNAL_ACCOUNT</code> only)  <br />Institution name for the payment account's institution</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format. E.g. <code>employer_name</code>: <code>Apple Inc</code></td>\n</tr>\n<tr>\n<td>payment_method_overview</td>\n<td>object, conditional</td>\n<td>(for <code>account_type</code> = <code>SETTLEMENT_ACCOUNT</code> only)  <br />Details on the settlement account's payment method configurations. See below.</td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp when the Payment Account object was last updated</td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>string</td>\n<td>Finverse unique ID for the user. See <code>POST /payment_users</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment_method_overview-object\">payment_method_overview (object)</h3>\n<p>(For <code>account_type</code> = <code>SETTLEMENT_ACCOUNT</code> only)</p>\n<p>Details on the settlement account's payment method configurations.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>external_gateway</td>\n<td>string, optional</td>\n<td>Name of the external gateway (if any) used to process payments to/from this settlement account.</td>\n</tr>\n<tr>\n<td>live_mode</td>\n<td>boolean</td>\n<td>Flag indicating whether the settlement account is used for real-money payments (<code>live_mode</code> = <code>true</code>) or only for test payments ( <code>live_mode</code> = <code>false</code>).</td>\n</tr>\n<tr>\n<td><code>payment_confirmation_speed</code></td>\n<td>string ENUM</td>\n<td>Speed at which payments are usually confirmed as <code>status</code> = <code>EXECUTED</code>.  <br />  <br />Possible values: <code>DELAYED</code> (confirmation can be delayed up to 24-48hrs), <code>REALTIME</code> (immediate confirmation expected within seconds)  <br />  <br />Note for <code>REALTIME</code> payments: payments may occasionally experience delayed confirmation (usually &lt;15min) due to delays in the external payment gateway or in internal Finverse systems.  <br />  <br />We recommend always implementing payment flows which support async reconciliation of payment statuses.</td>\n</tr>\n<tr>\n<td>payment_method_subtype</td>\n<td>string ENUM</td>\n<td>Payment method subtype supported by the settlement account. This can refer to the local payment rail name (e.g. <code>eGIRO</code>) or to the gateway name.  <br />  <br />Possible values (by <code>payemnt_method_type</code>:  <br />- <code>CARD</code> type: <code>ADYEN</code>, <code>CYBERSOURCE</code>, <code>STRIPE</code>  <br />- <code>MANDATE</code> type: <code>EDDA (HK)</code>, <code>EGIRO (SG)</code>  <br />- <code>MANUAL</code> type: <code>FPS (HK)</code>, <code>PAYNOW (SG)</code></td>\n</tr>\n<tr>\n<td>payment_method_type</td>\n<td>string ENUM</td>\n<td>Payment method type supported by the settlement account. Possible values: <code>CARD</code>, <code>MANDATE</code>, <code>MANUAL</code></td>\n</tr>\n<tr>\n<td>payment_processor</td>\n<td>string, optional</td>\n<td>Name of the payment intermediary entity (if any) flowing funds. This name which may be displayed on end-user statements when users pay to or receive funds from the settlement account.</td>\n</tr>\n<tr>\n<td>supported_currencies</td>\n<td>array of strings</td>\n<td>Currencies supported by the settlement account (e.g. <code>[HKD, CNY]</code>)</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["payment_accounts"],"host":["https://api.prod.finverse.net"],"query":[{"key":"account_type","value":"SETTLEMENT_ACCOUNT"},{"key":"currencies","value":"HKD,SGD"},{"key":"limit","value":"10"},{"key":"offset","value":"0"}],"variable":[]}},"response":[{"id":"f2ee09f8-1a65-4b43-9222-0c68c832a858","name":"Success (External Accounts)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":{"raw":"https://api.prod.finverse.net/payment_accounts?account_type=EXTERNAL_ACCOUNT&currencies=HKD,SGD&limit=10&offset=0","host":["https://api.prod.finverse.net"],"path":["payment_accounts"],"query":[{"key":"account_type","value":"EXTERNAL_ACCOUNT"},{"key":"currencies","value":"HKD,SGD"},{"key":"limit","value":"10"},{"key":"offset","value":"0"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1750486993"},{"key":"Date","value":"Sat, 21 Jun 2025 06:23:13 GMT"},{"key":"Content-Length","value":"1247"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"payment_accounts\": [\n        {\n            \"account_id\": \"01JY8C5EK9HVZGGJ13WAKXR6WQ\",\n            \"account_number\": {\n                \"number\": \"01JY8C5EPK3ZCQ85Y423CZR05X\",\n                \"type\": \"LOCAL\"\n            },\n            \"account_number_masked\": \"123XXXXX90\",\n            \"account_type\": \"EXTERNAL_ACCOUNT\",\n            \"accountholder_name\": \"01JY8C5EMYC8DM7576TBAA7RZW\",\n            \"bank_code\": \"420\",\n            \"business_units\": [],\n            \"created_at\": \"2025-06-21T04:32:50.393Z\",\n            \"currencies\": [\n                \"HKD\"\n            ],\n            \"customer_app_id\": \"01JY8AKP7FJJR4MM96YS13XPSS\",\n            \"institution_id\": \"testbank-dbs-hk\",\n            \"institution_name\": \"Testbank (HK) Payments - Personal\",\n            \"metadata\": {\n                \"employer_name\": \"Apple Inc\",\n                \"key\": \"value\"\n            },\n            \"updated_at\": \"2025-06-21T04:32:50.393Z\",\n            \"user_id\": \"01JY8C52DZQK1MQQNRJEKPA5S0\"\n        },\n        {\n            \"account_id\": \"01JY8BYFS6JTRTZD17HCTNTKCK\",\n            \"account_number\": {\n                \"number\": \"01JY8BYFVX5MQ03E52JRSTMC9X\",\n                \"type\": \"LOCAL\"\n            },\n            \"account_number_masked\": \"123XXXXX90\",\n            \"account_type\": \"EXTERNAL_ACCOUNT\",\n            \"accountholder_name\": \"01JY8BYFTEA7CYZV4Y0HZF7WKX\",\n            \"bank_code\": \"420\",\n            \"business_units\": [],\n            \"created_at\": \"2025-06-21T04:29:02.212Z\",\n            \"currencies\": [\n                \"HKD\"\n            ],\n            \"customer_app_id\": \"01JY8AKP7FJJR4MM96YS13XPSS\",\n            \"institution_id\": \"testbank-dbs-hk\",\n            \"institution_name\": \"Testbank (HK) Payments - Personal\",\n            \"metadata\": {\n                \"employer_name\": \"Apple Inc\",\n                \"key\": \"value\"\n            },\n            \"updated_at\": \"2025-06-21T04:29:02.212Z\",\n            \"user_id\": \"01JY8BY1XE678ZMJDRHNMZ7KXK\"\n        }\n    ],\n    \"total\": 2\n}"},{"id":"4c1c56bc-7fd5-43ee-9c48-22884c15897d","name":"Success (Settlement Accounts)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":{"raw":"https://api.prod.finverse.net/payment_accounts?account_type=SETTLEMENT_ACCOUNT&currencies=HKD,SGD&limit=10&offset=0","host":["https://api.prod.finverse.net"],"path":["payment_accounts"],"query":[{"key":"account_type","value":"SETTLEMENT_ACCOUNT"},{"key":"currencies","value":"HKD,SGD"},{"key":"limit","value":"10"},{"key":"offset","value":"0"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1750486940"},{"key":"Date","value":"Sat, 21 Jun 2025 06:22:19 GMT"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"},{"key":"Transfer-Encoding","value":"chunked"}],"cookie":[],"responseTime":null,"body":"{\n    \"payment_accounts\": [\n        {\n            \"account_id\": \"01JY8AKPHEKTXAQ254QEE9VP7W\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\",\n            \"business_units\": [],\n            \"created_at\": \"2025-06-21T04:05:40.014Z\",\n            \"customer_app_id\": \"01JY8AKP7FJJR4MM96YS13XPSS\",\n            \"updated_at\": \"2025-06-21T04:05:40.014Z\",\n            \"user_id\": \"01JY8AKP8PYEJ03BKSH5TF2B4A\",\n            \"payment_method_overview\": {\n                \"external_gateway\": \"UOB\",\n                \"live_mode\": false,\n                \"payment_confirmation_speed\": \"REALTIME\",\n                \"payment_method_subtype\": \"PAYNOW (SG)\",\n                \"payment_method_type\": \"MANUAL\",\n                \"supported_currencies\": [\n                    \"SGD\"\n                ]\n            }\n        },\n        {\n            \"account_id\": \"01JY8AKPGD7P79WCYKZXAYDJS8\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\",\n            \"business_units\": [],\n            \"created_at\": \"2025-06-21T04:05:39.981Z\",\n            \"customer_app_id\": \"01JY8AKP7FJJR4MM96YS13XPSS\",\n            \"updated_at\": \"2025-06-21T04:05:39.981Z\",\n            \"user_id\": \"01JY8AKP8PYEJ03BKSH5TF2B4A\",\n            \"payment_method_overview\": {\n                \"external_gateway\": \"UOB\",\n                \"live_mode\": false,\n                \"payment_confirmation_speed\": \"REALTIME\",\n                \"payment_method_subtype\": \"EGIRO (SG)\",\n                \"payment_method_type\": \"MANDATE\",\n                \"supported_currencies\": [\n                    \"SGD\"\n                ]\n            }\n        },\n        {\n            \"account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\",\n            \"business_units\": [],\n            \"created_at\": \"2025-06-21T04:05:39.939Z\",\n            \"customer_app_id\": \"01JY8AKP7FJJR4MM96YS13XPSS\",\n            \"updated_at\": \"2025-06-21T04:05:39.939Z\",\n            \"user_id\": \"01JY8AKP8PYEJ03BKSH5TF2B4A\",\n            \"payment_method_overview\": {\n                \"live_mode\": false,\n                \"payment_confirmation_speed\": \"REALTIME\",\n                \"payment_method_subtype\": \"STRIPE\",\n                \"payment_method_type\": \"CARD\",\n                \"payment_processor\": \"FINVERSE\",\n                \"supported_currencies\": [\n                    \"HKD\",\n                    \"CNY\",\n                    \"USD\",\n                    \"SGD\"\n                ]\n            }\n        },\n        {\n            \"account_id\": \"01JY8AKPD7J0GDJGX99VWJSMXN\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\",\n            \"business_units\": [],\n            \"created_at\": \"2025-06-21T04:05:39.879Z\",\n            \"customer_app_id\": \"01JY8AKP7FJJR4MM96YS13XPSS\",\n            \"updated_at\": \"2025-06-21T04:05:39.879Z\",\n            \"user_id\": \"01JY8AKP8PYEJ03BKSH5TF2B4A\",\n            \"payment_method_overview\": {\n                \"live_mode\": false,\n                \"payment_confirmation_speed\": \"DELAYED\",\n                \"payment_method_subtype\": \"FPS (HK)\",\n                \"payment_method_type\": \"MANUAL\",\n                \"payment_processor\": \"FINVERSE\",\n                \"supported_currencies\": [\n                    \"HKD\",\n                    \"CNY\"\n                ]\n            }\n        },\n        {\n            \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n            \"account_type\": \"SETTLEMENT_ACCOUNT\",\n            \"business_units\": [],\n            \"created_at\": \"2025-06-21T04:05:39.821Z\",\n            \"customer_app_id\": \"01JY8AKP7FJJR4MM96YS13XPSS\",\n            \"updated_at\": \"2025-06-21T04:05:39.821Z\",\n            \"user_id\": \"01JY8AKP8PYEJ03BKSH5TF2B4A\",\n            \"payment_method_overview\": {\n                \"live_mode\": false,\n                \"payment_confirmation_speed\": \"REALTIME\",\n                \"payment_method_subtype\": \"EDDA (HK)\",\n                \"payment_method_type\": \"MANDATE\",\n                \"payment_processor\": \"FINVERSE\",\n                \"supported_currencies\": [\n                    \"HKD\",\n                    \"CNY\"\n                ]\n            }\n        }\n    ],\n    \"total\": 5\n}"}],"_postman_id":"50bc0e0e-7f6f-43a6-ab3b-a539037f100e"},{"name":"/payment_accounts/{id} (Delete Payment Account)","event":[{"listen":"test","script":{"id":"db70a7d4-7b4b-4281-96cd-a6417ce9bc3e","exec":["if (pm.response.responseSize > 0) {","    var jsonData = pm.response.json()","};","","//LOG ERRORS & KEY VALUES","if(jsonData) {","    if(jsonData.error) {","        console.log(\"error:\", jsonData.error)","    }","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":[\"string\"]},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","if(jsonData) {","    pm.test('Response schema is valid', function() {","        pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","    });","}","//STANDARD TESTS - END","","//POSTMAN COLLECTION ROUTING LOGIC","    pm.execution.setNextRequest(\"/payouts/scheduled (Create scheduled payout)\") //Make next request: \"Create Payout\"","    console.log(\"End of Payment Account requests. Next step: Create Payout\");","//POSTMAN COLLECTION ROUTING LOGIC - END"],"type":"text/javascript","packages":{}}}],"id":"0b79b206-2724-4f3f-bb2f-25b0e074d413","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"DELETE","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/payment_accounts/{{payment_account_id}}","description":"<p>Delete a <code>Payment Account</code> object (using a specific <code>account_id</code>).</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"response\">Response</h2>\n<p>Use response's HTTP status code to determine if the request is successful:</p>\n<ul>\n<li><strong>HTTP 200</strong>: successfully deleted (empty response body)</li>\n<li><strong>HTTP 400+</strong>: error (response body will contain a standard Finverse error object)</li>\n</ul>\n","urlObject":{"path":["payment_accounts","{{payment_account_id}}"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"8b7185e6-457f-43ae-bcfa-40927b8d656f","name":"Success","originalRequest":{"method":"DELETE","header":[],"url":"https://api.prod.finverse.net/payment_accounts/{{payment_account_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"plain","header":[{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Mon, 12 Dec 2022 10:29:07 GMT"},{"key":"Content-Length","value":"0"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":null},{"id":"b49f7a7a-546c-4afd-892d-9580584ed8fa","name":"Error (Account not found)","originalRequest":{"method":"DELETE","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/payment_accounts/{{payment_account_id}}"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1695216251"},{"key":"Date","value":"Wed, 20 Sep 2023 13:24:10 GMT"},{"key":"Content-Length","value":"241"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"payment_account_id cannot be found\",\n        \"error_code\": \"RESOURCE_NOT_FOUND\",\n        \"message\": \"Resource cannot be found. Resource does not exist, has been deleted, or is not accessible.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"0b79b206-2724-4f3f-bb2f-25b0e074d413"}],"id":"05642a2a-767f-41e0-945d-ce72aa91709c","_postman_id":"05642a2a-767f-41e0-945d-ce72aa91709c","description":""}],"id":"af5ae068-b79e-490c-b310-a02f7cb431a2","_postman_id":"af5ae068-b79e-490c-b310-a02f7cb431a2","description":""},{"name":"Payouts","item":[{"name":"/payouts/scheduled (Create scheduled payout)","event":[{"listen":"test","script":{"id":"ae735282-c22a-4661-8ed8-aa7991ec3752","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if(jsonData.payout_id) {","    pm.environment.set(\"payout_id\", jsonData.payout_id)","};","","//LOG ERRORS & KEY VALUES","if(jsonData.status) {","    console.log(\"Payout status:\", jsonData.status)","};","","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payout ID or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"payout_id\",","        \"error\"","    )","});","","//Payout Status is CREATED","pm.test(\"Payout status is CREATED\", function() {","    pm.expect(jsonData.status).to.equal(\"CREATED\")","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","   var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"amount\": {\"type\":\"integer\"},","            \"created_at\": {\"type\":\"string\"},","            \"currency\": {\"type\":\"string\"},","            \"error\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\": [","                    \"code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ] ","            },","            \"fees\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"amount\": {\"type\":\"integer\"},","                        \"currency\": {\"type\":\"string\"},","                        \"paid_by\": {","                            \"type\":\"string\",","                            \"enum\": [\"RECIPIENT\", \"SENDER\"]","                        },","                        \"paid_by_account_id\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"amount\", ","                        \"currency\", ","                        \"paid_by\", ","                        \"paid_by_account_id\"","                    ]","                }","            },","            \"live\": {\"type\":\"boolean\"},","            \"metadata\": {\"type\":\"object\"},","            \"payment_details\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"description\": {\"type\":\"string\"},","                    \"estimated_arrival_time\": {\"type\":\"string\"},","                    \"mandate_id\": {\"type\":\"string\"},","                    \"processor_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"processor_id\": {\"type\":\"string\"},","                            \"processor_reference\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"processor_id\"","                        ]","                    },","                    \"references\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"recipient_reference\": {\"type\":\"string\"},","                        },","                        \"required\": []","                    },","                    \"scheduled_date\": {\"type\":\"string\"},","                    \"transaction_reference_id\": {\"type\":\"string\"}","                    },","                \"required\": [","                    \"description\",","                    \"scheduled_date\",","                    \"transaction_reference_id\"","                ]","            },","            \"payout_id\": {\"type\":\"string\"},","            \"recipient\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"external_user_id\": {\"type\":\"string\"},","                    \"user_details\": {","                        \"type\":[\"array\",\"null\"],","                        \"items\": {","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details_type\": {\"type\":\"string\"},","                                \"values\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"additionalProperties\": false,","                                        \"type\": \"string\"","                                    }","                                }","                            },","                            \"required\": [","                                \"details_type\",","                                \"values\"","                            ]","                        }","                    },","                    \"name\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                    \"user_type\": {\"type\":\"string\"},","                },","                \"required\": [","                    \"external_user_id\",","                    //\"name\", TO BE ENFORCED","                    \"user_details\",","                    \"user_id\",","                    \"user_type\"","                ]","            },     ","            \"recipient_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_number\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"number\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"IBAN\", \"LOCAL\"]","                            }","                        },","                        \"required\": [","                            \"number\",","                            \"type\"","                        ]","                    },","                    \"account_number_masked\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    },","                    \"accountholder_name\": {\"type\":\"string\"},","                    \"bank_code\": {\"type\":\"string\"},","                    \"institution_id\": {\"type\":\"string\"},","                    \"institution_name\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                },","                \"required\": [","                    \"account_number\",","                    \"account_number_masked\",","                    \"account_type\",","                    \"institution_id\",","                    \"user_id\"","                ]","            },","            \"sender\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"name\": {\"type\":\"string\"}   ","                },","                \"required\": [","                    \"name\",","                ]","            },","            \"sender_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    }","                },","                \"required\": [","                    \"account_id\",","                    \"account_type\"","                ]","            },","            \"status\": {","                \"type\":\"string\",","                \"enum\": [\"CREATED\", \"FUNDED\", \"PROCESSING\", \"SUBMITTED\", \"EXECUTED\", \"CANCELLED\", \"FAILED\"]","            },","            \"transaction_date\": {\"type\":\"string\"}, // DEPRECATED","            \"transaction_time\": {\"type\":\"string\"},","            \"type\": {","                \"type\":\"string\",","                \"enum\": [\"MANUAL\", \"SCHEDULED\", \"SETTLEMENT\"]","            },","            \"updated_at\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"amount\",","            \"created_at\",","            \"currency\",","            \"live\",","            \"payment_details\",","            \"payout_id\",","            \"sender\",","            \"sender_account\",","            \"status\",","            \"type\",","            \"updated_at\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"82fedebe-8816-48ac-8727-c4caca00d89c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Idempotency-Key","value":"a14344ac-196c-40bd-9076-6bcd926b7a2a","description":"<p>String, required. Refer to Payments API documentation</p>\n"},{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 1000,\n    \"currency\": \"HKD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {\n        \"description\": \"Description\",\n        \"mandate_id\": \"{{mandate_id}}\",\n        \"scheduled_date\": \"{{today}}\"\n      },\n    \"recipient_account\": {\n        \"account_id\": \"{{recipient_account_id_payout}}\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payouts/scheduled","description":"<p>Create new scheduled payout, funded by a pre-authorized Mandate (e.g. Direct Debit mandate).</p>\n<p>Finverse allows two types of payouts:</p>\n<ul>\n<li><strong>Realtime payouts</strong>: immediately funded and executed</li>\n<li><strong>Scheduled payouts</strong>: funded and executed on a scheduled date.</li>\n</ul>\n<p><code>Idempotency-Key</code> header is <strong>required</strong>. This makes it safe to retry the request without re-triggering the underlying create Payout operation. Any retries will return the same response as the first request using the same key.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"request-parameters\">Request parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>amount</td>\n<td>integer (ISO 4217 \"minor\" currency unit), required</td>\n<td>Amount of the payout (in minor currency unit)</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code), required</td>\n<td>Currency of the payout (e.g. HKD)</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format. E.g. <code>employer_name</code>: <code>Apple Inc</code></td>\n</tr>\n<tr>\n<td>payment_details</td>\n<td>object, required</td>\n<td>Details on the payout. See below.</td>\n</tr>\n<tr>\n<td>recipient_account</td>\n<td>object, required</td>\n<td>Details on the account receiving the payout. See below.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment_details-object-required\">payment_details (object, required)</h3>\n<p>Details describing the payout.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>description</td>\n<td>string (SWIFT character set, max length: 20 characters), required</td>\n<td>User-facing description for the payout transaction. SWIFT character set includes the following characters: alphanumeric, space, and symbols <code>/ - ? : ( ) . , ' +</code></td>\n</tr>\n<tr>\n<td>mandate_id</td>\n<td>string (ULID), required</td>\n<td><code>mandate_id</code> from mandates object. Indicates which direct debit mandate should be used to fund the payout.</td>\n</tr>\n<tr>\n<td>scheduled_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), conditionally required</td>\n<td>Scheduled date when the payout should be executed. Required when payout <code>type</code>= <code>SCHEDULED</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"recipient_account-object-required\">recipient_account (object, required)</h3>\n<p>Details on the account receiving the payout.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>account_id</td>\n<td>string (ULID), required</td>\n<td>Finverse ID for the payment account receiving the payout. This must be an account with <code>type</code> = <code>EXTERNAL</code>. See <code>POST /payment_accounts</code> to create a payment account.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-fields\">Response fields</h2>\n<p>The response is a Payout object.</p>\n<p>Refer to Payout object data model in <code>GET /payouts/{payout_id}</code>.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":true,"source":{"_postman_id":"81ce0d7a-f4cf-4325-ab2a-170f4751f1e0","id":"81ce0d7a-f4cf-4325-ab2a-170f4751f1e0","name":"Payouts","type":"folder"}},"urlObject":{"path":["payouts","scheduled"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"ebb141ba-7e10-4bcb-91e3-4fbaa9592746","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"c3897cab-dedf-4a98-8468-faeab85faf15","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 1000,\n    \"currency\": \"HKD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {\n        \"description\": \"Description\",\n        \"mandate_id\": \"{{mandate_id}}\",\n        \"scheduled_date\": \"2023-10-25\"\n      },\n    \"recipient_account\": {\n        \"account_id\": \"{{recipient_account_id_payout}}\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payouts/scheduled"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1698219190"},{"key":"Date","value":"Wed, 25 Oct 2023 07:33:09 GMT"},{"key":"Content-Length","value":"1238"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 1000,\n    \"created_at\": \"2023-10-25T07:33:09.860Z\",\n    \"currency\": \"HKD\",\n    \"fees\": [\n        {\n            \"amount\": 500,\n            \"currency\": \"HKD\",\n            \"paid_by\": \"RECIPIENT\",\n            \"paid_by_account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\"\n        }\n    ],\n    \"live\": false,\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"payment_details\": {\n        \"description\": \"Description\",\n        \"mandate_id\": \"01HDH3JRCNCV7A96HQW45X6066\",\n        \"scheduled_date\": \"2023-10-25T00:00:00.000Z\",\n        \"transaction_reference_id\": \"5EZJE6\"\n    },\n    \"payout_id\": \"01HDJW0SFQ11DTEY3GX5GEEHN4\",\n    \"recipient\": {\n        \"external_user_id\": \"unique_user_id_1697599957\",\n        \"name\": \"John Doe\",\n        \"user_details\": [\n            {\n                \"details_type\": \"HK_ID\",\n                \"values\": [\n                    \"01HD0DFARTX23HW6BA7333B7SR\"\n                ]\n            }\n        ],\n        \"user_id\": \"01HD0DFAFDDA9JJ4C5X1EKK30V\",\n        \"user_type\": \"INDIVIDUAL\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01HD0DFMNZE2B3Y4QGCY3EK7CE\",\n        \"account_number\": {\n            \"number\": \"01HD0DFMWE0QRC6EWRP2VGXGDB\",\n            \"type\": \"LOCAL\"\n        },\n        \"account_number_masked\": \"XXX45\",\n        \"account_type\": \"EXTERNAL_ACCOUNT\",\n        \"accountholder_name\": \"01HD0DFMV8QGXB16YK95SH2EB3\",\n        \"bank_code\": \"420\",\n        \"institution_id\": \"testbank-dbs-hk\",\n        \"user_id\": \"01HD0DFAFDDA9JJ4C5X1EKK30V\"\n    },\n    \"sender\": {\n        \"name\": \"Demo App\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"status\": \"CREATED\",\n    \"type\": \"SCHEDULED\",\n    \"updated_at\": \"2023-10-25T07:33:09.860Z\"\n}"},{"id":"9163c165-be1a-40c0-9293-01fb3f9d69c1","name":"Error (Mandate not yet in effect)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"24798bc7-7d83-4ce0-b375-f303d9c6b097","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 1000,\n    \"currency\": \"HKD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {\n        \"description\": \"Description\",\n        \"mandate_id\": \"{{mandate_id}}\",\n        \"scheduled_date\": \"2022-10-20\"\n      },\n    \"recipient_account\": {\n        \"account_id\": \"{{recipient_account_id_payout}}\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payouts/scheduled"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1698123355"},{"key":"Date","value":"Tue, 24 Oct 2023 04:55:55 GMT"},{"key":"Content-Length","value":"204"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"\",\n        \"error_code\": \"PAYMENT_MANDATE_NOT_EFFECTIVE\",\n        \"message\": \"Cannot create payment because the referred mandate is not effective yet.\",\n        \"request_id\": \"1698123355\",\n        \"type\": \"PAYMENT_ERROR\"\n    }\n}"},{"id":"2e2a62a2-cfff-40e7-a344-826fc6764cff","name":"Error (Mandate expired)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"8e019a99-6730-4851-b5fd-923f1460e2d0","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 1000,\n    \"currency\": \"HKD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {\n        \"description\": \"Description\",\n        \"mandate_id\": \"{{mandate_id}}\",\n        \"scheduled_date\": \"2050-12-31\"\n      },\n    \"recipient_account\": {\n        \"account_id\": \"{{recipient_account_id_payout}}\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payouts/scheduled"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1698123271"},{"key":"Date","value":"Tue, 24 Oct 2023 04:54:31 GMT"},{"key":"Content-Length","value":"189"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"\",\n        \"error_code\": \"PAYMENT_MANDATE_EXPIRED\",\n        \"message\": \"Cannot create payment because the referred mandate has expired.\",\n        \"request_id\": \"1698123271\",\n        \"type\": \"PAYMENT_ERROR\"\n    }\n}"},{"id":"2d90be95-c57b-4d5f-911d-f39f4e0d58e3","name":"Error (Mandate incomplete)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"befae20b-3f17-4616-a27b-c1d80374b1b0","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 1000,\n    \"currency\": \"HKD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {\n        \"description\": \"Description\",\n        \"mandate_id\": \"{{mandate_id}}\",\n        \"scheduled_date\": \"2023-12-31\"\n      },\n    \"recipient_account\": {\n        \"account_id\": \"{{recipient_account_id_payout}}\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payouts/scheduled"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1699859603"},{"key":"Date","value":"Mon, 13 Nov 2023 07:13:23 GMT"},{"key":"Content-Length","value":"219"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"\",\n        \"error_code\": \"PAYMENT_MANDATE_STATUS_INVALID\",\n        \"message\": \"The mandate has not been setup properly. Please check our documentation and try again.\",\n        \"request_id\": \"1699859603\",\n        \"type\": \"PAYMENT_ERROR\"\n    }\n}"},{"id":"b7147187-4bb1-4b31-a9a4-346d174479b7","name":"Error (Recipient Account not found)","originalRequest":{"method":"POST","header":[{"key":"Idempotency-Key","value":"57c78862-9aa8-4005-808d-eda2aa1ac8b4","description":"String, required. Refer to Payments API documentation","type":"text"},{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 1000,\n    \"currency\": \"HKD\",\n    \"metadata\": {\n        \"key\": \"value\",\n        \"employer_name\": \"Apple Inc\"\n    },\n    \"payment_details\": {\n        \"description\": \"Description\",\n        \"mandate_id\": \"{{mandate_id}}\",\n        \"scheduled_date\": \"2023-12-31\"\n      },\n    \"recipient_account\": {\n        \"account_id\": \"{{recipient_account_id_payout}}2\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/payouts/scheduled"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1698123211"},{"key":"Date","value":"Tue, 24 Oct 2023 04:53:31 GMT"},{"key":"Content-Length","value":"205"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"details\": \"recipient_account_id was not found\",\n        \"error_code\": \"INVALID_INPUT\",\n        \"message\": \"Invalid parameter value(s). Please review parameter inputs.\",\n        \"request_id\": \"1698123211\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"82fedebe-8816-48ac-8727-c4caca00d89c"},{"name":"/payouts/{id}","event":[{"listen":"test","script":{"id":"d889e4fc-ccdb-42c4-995f-c04a156b27c2","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.status) {","    console.log(\"Payout status:\", jsonData.status)","};","","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payout ID or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"payout_id\",","        \"error\"","    )","});","","//Payout Status is not FAILED","pm.test(\"Payout status is not FAILED\", function() {","    pm.expect(jsonData.status).to.not.equal(\"FAILED\")","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"amount\": {\"type\":\"integer\"},","            \"created_at\": {\"type\":\"string\"},","            \"currency\": {\"type\":\"string\"},","            \"error\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\": [","                    \"code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ] ","            },","            \"fees\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"amount\": {\"type\":\"integer\"},","                        \"currency\": {\"type\":\"string\"},","                        \"paid_by\": {","                            \"type\":\"string\",","                            \"enum\": [\"RECIPIENT\", \"SENDER\"]","                        },","                        \"paid_by_account_id\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"amount\", ","                        \"currency\", ","                        \"paid_by\", ","                        \"paid_by_account_id\"","                    ]","                }","            },","            \"live\": {\"type\":\"boolean\"},","            \"metadata\": {\"type\":\"object\"},","            \"payment_details\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"description\": {\"type\":\"string\"},","                    \"estimated_arrival_time\": {\"type\":\"string\"},","                    \"mandate_id\": {\"type\":\"string\"},","                    \"processor_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"processor_id\": {\"type\":\"string\"},","                            \"processor_reference\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"processor_id\"","                        ]","                    },","                    \"references\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"recipient_reference\": {\"type\":\"string\"},","                        },","                        \"required\": []","                    },","                    \"scheduled_date\": {\"type\":\"string\"},","                    \"transaction_reference_id\": {\"type\":\"string\"}","                    },","                \"required\": [","                    \"description\",","                    \"scheduled_date\",","                    \"transaction_reference_id\"","                ]","            },","            \"payout_id\": {\"type\":\"string\"},","            \"recipient\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"external_user_id\": {\"type\":\"string\"},","                    \"user_details\": {","                        \"type\":[\"array\",\"null\"],","                        \"items\": {","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details_type\": {\"type\":\"string\"},","                                \"values\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"additionalProperties\": false,","                                        \"type\": \"string\"","                                    }","                                }","                            },","                            \"required\": [","                                \"details_type\",","                                \"values\"","                            ]","                        }","                    },","                    \"name\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                    \"user_type\": {\"type\":\"string\"},","                },","                \"required\": [","                    \"external_user_id\",","                    //\"name\", TO BE ENFORCED","                    \"user_details\",","                    \"user_id\",","                    \"user_type\"","                ]","            },     ","            \"recipient_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_number\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"number\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"IBAN\", \"LOCAL\"]","                            }","                        },","                        \"required\": [","                            \"number\",","                            \"type\"","                        ]","                    },","                    \"account_number_masked\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    },","                    \"accountholder_name\": {\"type\":\"string\"},","                    \"bank_code\": {\"type\":\"string\"},","                    \"institution_id\": {\"type\":\"string\"},","                    \"institution_name\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                },","                \"required\": [","                    \"account_number\",","                    \"account_number_masked\",","                    \"account_type\",","                    \"institution_id\",","                    \"user_id\"","                ]","            },","            \"sender\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"name\": {\"type\":\"string\"}   ","                },","                \"required\": [","                    \"name\",","                ]","            },","            \"sender_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    }","                },","                \"required\": [","                    \"account_id\",","                    \"account_type\"","                ]","            },","            \"status\": {","                \"type\":\"string\",","                \"enum\": [\"CREATED\", \"FUNDED\", \"PROCESSING\", \"SUBMITTED\", \"EXECUTED\", \"CANCELLED\", \"FAILED\"]","            },","            \"transaction_date\": {\"type\":\"string\"}, // DEPRECATED","            \"transaction_time\": {\"type\":\"string\"},","            \"type\": {","                \"type\":\"string\",","                \"enum\": [\"MANUAL\", \"SCHEDULED\", \"SETTLEMENT\"]","            },","            \"updated_at\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"amount\",","            \"created_at\",","            \"currency\",","            \"live\",","            \"payment_details\",","            \"payout_id\",","            \"sender\",","            \"sender_account\",","            \"status\",","            \"type\",","            \"updated_at\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"5c15031d-1bb0-4cdd-9a57-4390d9dd6d1e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/payouts/{{payout_id}}","description":"<p>Retrieve a Payout object (using a specific <code>payout_id</code>).</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"response-fields\">Response fields</h2>\n<p>Single <code>Payout</code> object, containing information on the Payout.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>amount</td>\n<td>integer (ISO 4217 \"minor\" currency unit)</td>\n<td>Amount of the payout (in minor currency unit)</td>\n</tr>\n<tr>\n<td>created_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp when the payout was first created</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code)</td>\n<td>Currency of the payout (e.g. HKD)</td>\n</tr>\n<tr>\n<td>error</td>\n<td>Finverse standard <code>error</code> object, optional</td>\n<td>Details on why the payout failed (returned when <code>status</code> = <code>FAILED</code>).  <br />Note: this is used to detail any asynchronous e errors occuring after payout creation; any synchronous errors (e.g. API validation errors, real-time payout errors) will instead be returned directly during <code>POST /payouts</code>.</td>\n</tr>\n<tr>\n<td>fees</td>\n<td>array</td>\n<td>Details on the fee(s) to be charged. See below.</td>\n</tr>\n<tr>\n<td>live</td>\n<td>boolean</td>\n<td>Flag to indicate whether the payment is a test transaction (i.e. from/to a test bank, <code>live=false</code>) or a live transaction (i.e. from/to a real bank, <code>live=true</code>).</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format. E.g. <code>employer_name</code>: <code>Apple Inc</code></td>\n</tr>\n<tr>\n<td>payment_details</td>\n<td>object</td>\n<td>Details on the payout. See below.</td>\n</tr>\n<tr>\n<td>payout_id</td>\n<td>string (ULID)</td>\n<td>Finverse Payout ID for this payout. Always unique. Creating a payout with different idempotency keys will result in two payouts with different IDs.</td>\n</tr>\n<tr>\n<td>recipient</td>\n<td>object</td>\n<td>Details on the recipient of the payout. See below.</td>\n</tr>\n<tr>\n<td>recipient_account</td>\n<td>object</td>\n<td>Details on the account receiving the payout. See below.</td>\n</tr>\n<tr>\n<td>sender</td>\n<td>object</td>\n<td>Details on the sender of the payout. See below.</td>\n</tr>\n<tr>\n<td>sender_account</td>\n<td>object</td>\n<td>Details on the Sender's account at Finverse (i.e. the Customer App's settlement account at Finverse). See below.</td>\n</tr>\n<tr>\n<td>status</td>\n<td>string ENUM</td>\n<td>Current status of the payout. Possible values: <code>CREATED</code>, <code>FUNDED</code>, <code>PROCESSING</code>, <code>SUBMITTED, EXECUTED</code>, <code>CANCELLED</code>, <code>FAILED</code></td>\n</tr>\n<tr>\n<td>type</td>\n<td>string ENUM</td>\n<td>Specified payout type. Possible values: <code>REALTIME</code>, <code>SCHEDULED</code></td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last update to the payout's record</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"fees-array\">fees (array)</h3>\n<p>Details on the fee(s) to be charged. Returns an empty array if no fees will be charged.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>amount</td>\n<td>integer (ISO 4217 \"minor\" currency unit)</td>\n<td>Amount of the fee (in minor currency unit)</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code)</td>\n<td>Currency of the fee (e.g. HKD)</td>\n</tr>\n<tr>\n<td>paid_by</td>\n<td>string ENUM</td>\n<td>Party who will be charged the fee. Possible values: <code>RECIPIENT</code>, <code>SENDER</code></td>\n</tr>\n<tr>\n<td>paid_by_account_id</td>\n<td>string (ULID)</td>\n<td>Finverse Payment Account ID of the party who will be charged the fee. This references the <code>account_id</code> of either the <code>recipient_account</code> or the <code>sender_account</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment_details-object\">payment_details (object)</h3>\n<p>Details describing the Payout.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>description</td>\n<td>string (SWIFT character set)</td>\n<td>User-facing description for the payout transaction. SWIFT character set includes the following characters: alphanumeric, space, and symbols <code>/ - ? : ( ) . , ' +</code></td>\n</tr>\n<tr>\n<td>mandate_id</td>\n<td>string (ULID)</td>\n<td><code>mandate_id</code> from mandates object. Indicates which direct debit mandate should be used to fund the payout.</td>\n</tr>\n<tr>\n<td>scheduled_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), conditionally required</td>\n<td>Scheduled date when the payout should be executed. Required when payout <code>type</code> = <code>SCHEDULED</code>.</td>\n</tr>\n<tr>\n<td>transaction_reference_id</td>\n<td>string (6-digit alphanumeric)</td>\n<td>User-facing transaction reference ID for the payout transaction, generated by Finverse. This value will typically be provided to banks executing the payout and may be displayed on the recipient's bank statement.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"recipient-object-sender-object\">recipient (object), sender (object)</h3>\n<p>The recipient and sender objects include a Payment User object for each of the counterparties of a payout. Refer to the Payment User data model in <code>GET /payment_users/{payment_user_id}</code> for details on the Payment User object.</p>\n<p>Note: Some Payment User metadata fields are omitted for clarity (e.g. <code>created_at</code>, <code>metadata</code>, <code>updated_at</code>).</p>\n<h3 id=\"recipient_account-object-sender_account-object\">recipient_account (object), sender_account (object)</h3>\n<p>The recipient_account and sender_account objects include a Payment Account object for each of the counterparties of a payout. Refer to the Payment Account object data model in <code>GET /payment_users/{user_id}/payment_accounts</code> for details on the Payment Account object.</p>\n<p>Note: Some Payment Account metadata fields are omitted for clarity (e.g. <code>created_at</code>, <code>metadata</code>, <code>updated_at</code>).</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":true,"source":{"_postman_id":"81ce0d7a-f4cf-4325-ab2a-170f4751f1e0","id":"81ce0d7a-f4cf-4325-ab2a-170f4751f1e0","name":"Payouts","type":"folder"}},"urlObject":{"path":["payouts","{{payout_id}}"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"899b4c06-d7bd-4acd-b124-d24ab2669e49","name":"Success (Payout created)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/payouts/{{payout_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1698219215"},{"key":"Date","value":"Wed, 25 Oct 2023 07:33:35 GMT"},{"key":"Content-Length","value":"1238"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 1000,\n    \"created_at\": \"2023-10-25T07:33:10.997Z\",\n    \"currency\": \"HKD\",\n    \"fees\": [\n        {\n            \"amount\": 500,\n            \"currency\": \"HKD\",\n            \"paid_by\": \"RECIPIENT\",\n            \"paid_by_account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\"\n        }\n    ],\n    \"live\": false,\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"payment_details\": {\n        \"description\": \"Description\",\n        \"mandate_id\": \"01HDH3JRCNCV7A96HQW45X6066\",\n        \"scheduled_date\": \"2023-10-25T00:00:00.000Z\",\n        \"transaction_reference_id\": \"5EZJE6\"\n    },\n    \"payout_id\": \"01HDJW0SFQ11DTEY3GX5GEEHN4\",\n    \"recipient\": {\n        \"external_user_id\": \"unique_user_id_1697599957\",\n        \"name\": \"John Doe\",\n        \"user_details\": [\n            {\n                \"details_type\": \"HK_ID\",\n                \"values\": [\n                    \"01HD0DFARTX23HW6BA7333B7SR\"\n                ]\n            }\n        ],\n        \"user_id\": \"01HD0DFAFDDA9JJ4C5X1EKK30V\",\n        \"user_type\": \"INDIVIDUAL\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01HD0DFMNZE2B3Y4QGCY3EK7CE\",\n        \"account_number\": {\n            \"number\": \"01HD0DFMWE0QRC6EWRP2VGXGDB\",\n            \"type\": \"LOCAL\"\n        },\n        \"account_number_masked\": \"XXX45\",\n        \"account_type\": \"EXTERNAL_ACCOUNT\",\n        \"accountholder_name\": \"01HD0DFMV8QGXB16YK95SH2EB3\",\n        \"bank_code\": \"420\",\n        \"institution_id\": \"testbank-dbs-hk\",\n        \"user_id\": \"01HD0DFAFDDA9JJ4C5X1EKK30V\"\n    },\n    \"sender\": {\n        \"name\": \"Demo App\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"status\": \"CREATED\",\n    \"type\": \"SCHEDULED\",\n    \"updated_at\": \"2023-10-25T07:33:10.997Z\"\n}"},{"id":"7a668b45-483a-4258-8b00-f76fd2165bb4","name":"Success (Payout processing)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/payouts/{{payout_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1698219215"},{"key":"Date","value":"Wed, 25 Oct 2023 07:33:35 GMT"},{"key":"Content-Length","value":"1238"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 1000,\n    \"created_at\": \"2023-10-25T07:33:10.997Z\",\n    \"currency\": \"HKD\",\n    \"fees\": [\n        {\n            \"amount\": 500,\n            \"currency\": \"HKD\",\n            \"paid_by\": \"RECIPIENT\",\n            \"paid_by_account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\"\n        }\n    ],\n    \"live\": false,\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"payment_details\": {\n        \"description\": \"Description\",\n        \"mandate_id\": \"01HDH3JRCNCV7A96HQW45X6066\",\n        \"scheduled_date\": \"2023-10-25T00:00:00.000Z\",\n        \"transaction_reference_id\": \"5EZJE6\"\n    },\n    \"payout_id\": \"01HDJW0SFQ11DTEY3GX5GEEHN4\",\n    \"recipient\": {\n        \"external_user_id\": \"unique_user_id_1697599957\",\n        \"name\": \"John Doe\",\n        \"user_details\": [\n            {\n                \"details_type\": \"HK_ID\",\n                \"values\": [\n                    \"01HD0DFARTX23HW6BA7333B7SR\"\n                ]\n            }\n        ],\n        \"user_id\": \"01HD0DFAFDDA9JJ4C5X1EKK30V\",\n        \"user_type\": \"INDIVIDUAL\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01HD0DFMNZE2B3Y4QGCY3EK7CE\",\n        \"account_number\": {\n            \"number\": \"01HD0DFMWE0QRC6EWRP2VGXGDB\",\n            \"type\": \"LOCAL\"\n        },\n        \"account_number_masked\": \"XXX45\",\n        \"account_type\": \"EXTERNAL_ACCOUNT\",\n        \"accountholder_name\": \"01HD0DFMV8QGXB16YK95SH2EB3\",\n        \"bank_code\": \"420\",\n        \"institution_id\": \"testbank-dbs-hk\",\n        \"user_id\": \"01HD0DFAFDDA9JJ4C5X1EKK30V\"\n    },\n    \"sender\": {\n        \"name\": \"Demo App\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"status\": \"PROCESSING\",\n    \"type\": \"SCHEDULED\",\n    \"updated_at\": \"2023-10-25T07:35:10.997Z\"\n}"},{"id":"2f8b6402-2ab7-45c4-b264-0d712cb36120","name":"Success (Settlement payout)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/payouts/{{payout_id}}"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1757494472"},{"key":"Date","value":"Wed, 10 Sep 2025 08:54:32 GMT"},{"key":"Content-Length","value":"1021"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 14986,\n    \"created_at\": \"2025-09-01T05:01:04.459Z\",\n    \"currency\": \"HKD\",\n    \"fees\": [],\n    \"live\": false,\n    \"metadata\": {\n        \"adyen_balance_account_id\": \"BA32CQQ223229D5N25FX22T3S\",\n        \"adyen_transaction_id\": \"EVJN42CQW225223W5N42QDKDBP4X3THKD\",\n        \"adyen_transfer_id\": \"6JH0IB6866J194ZR\",\n        \"adyen_transfer_instrument_id\": \"SE32CSP223226Q5N25HX4BVQ8\"\n    },\n    \"payment_details\": {\n        \"description\": \"Monthly clearing payout\",\n        \"estimated_arrival_time\": \"2025-09-01T19:05:00.000Z\",\n        \"processor_details\": {\n            \"processor_id\": \"ADYEN\",\n            \"processor_reference\": \"SWPE42CPH22337HK5N25K2M3RD4RFH\"\n        },\n        \"references\": {\n            \"recipient_reference\": \"FinverseCardPayout\"\n        },\n        \"scheduled_date\": \"2025-09-01T05:00:21.000Z\",\n        \"transaction_reference_id\": \"FinverseCardPayout SWPE42CPH22337HK5N25K2M3RD4RFH\"\n    },\n    \"payout_id\": \"01K41TC01K3MATGN9K05B5YC2M\",\n    \"sender\": {\n        \"name\": \"Demo Company (Global)\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"01K2Z4517P0CG4TPS1E7YJ1G8R\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"status\": \"EXECUTED\",\n    \"transaction_time\": \"2025-09-01T05:00:27.000Z\",\n    \"type\": \"SETTLEMENT\",\n    \"updated_at\": \"2025-09-01T05:01:04.459Z\"\n}"},{"id":"fde268f5-5000-4ce8-a330-8b3d03909d78","name":"Success (Manual payout)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/payouts/{{payout_id}}"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1757494527"},{"key":"Date","value":"Wed, 10 Sep 2025 08:55:27 GMT"},{"key":"Content-Length","value":"1075"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 4000,\n    \"created_at\": \"2023-12-15T10:53:05.274Z\",\n    \"currency\": \"HKD\",\n    \"fees\": [],\n    \"live\": false,\n    \"payment_details\": {\n        \"description\": \"Finverse payout FV231215TEST6\",\n        \"scheduled_date\": \"0001-01-01T00:00:00.000Z\",\n        \"transaction_reference_id\": \"FV231215TEST6\"\n    },\n    \"payout_id\": \"01HHPHQFE15WTHSR2VP67412FP\",\n    \"recipient\": {\n        \"external_user_id\": \"XERO_CUSTOMER-01HH0YNP5RZQYPC20RG71H9QYH\",\n        \"name\": \"Demo Company (Global)\",\n        \"user_details\": [],\n        \"user_id\": \"01HH0YNP779S2DD3WFWKF6TEPX\",\n        \"user_type\": \"BUSINESS\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01HH0YNP91WV8CT9F34C484ZTE\",\n        \"account_number\": {\n            \"number\": \"01HH0YNPED8F69EFTBMWBP8T37\",\n            \"type\": \"LOCAL\"\n        },\n        \"account_number_masked\": \"012XXXXXX7890\",\n        \"account_type\": \"EXTERNAL_ACCOUNT\",\n        \"accountholder_name\": \"01HH0YNPDA5XXWZC75G0HH4A8M\",\n        \"bank_code\": \"012\",\n        \"institution_id\": \"bochk-business\",\n        \"user_id\": \"01HH0YNP779S2DD3WFWKF6TEPX\"\n    },\n    \"sender\": {\n        \"name\": \"Demo Company (Global)\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"01H5GXS3S6SGY7N4WBDZ2VYB2A\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"status\": \"EXECUTED\",\n    \"transaction_date\": \"2023-12-15\",\n    \"type\": \"MANUAL\",\n    \"updated_at\": \"2023-12-15T10:53:05.274Z\"\n}"}],"_postman_id":"5c15031d-1bb0-4cdd-9a57-4390d9dd6d1e"},{"name":"/payouts/{id}/cancel (Cancel Payout)","event":[{"listen":"test","script":{"id":"d886f1c1-7ed4-49e3-8f2c-379b9b1da8f1","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.status) {","    console.log(\"Payout status:\", jsonData.status)","};","","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payout ID or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"payout_id\",","        \"error\"","    )","});","","//Payout Status is CANCELLED","pm.test(\"Payout status is CANCELLED\", function() {","    pm.expect(jsonData.status).to.equal(\"CANCELLED\")","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","   var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"amount\": {\"type\":\"integer\"},","            \"created_at\": {\"type\":\"string\"},","            \"currency\": {\"type\":\"string\"},","            \"error\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\": [","                    \"code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ] ","            },","            \"fees\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"amount\": {\"type\":\"integer\"},","                        \"currency\": {\"type\":\"string\"},","                        \"paid_by\": {","                            \"type\":\"string\",","                            \"enum\": [\"RECIPIENT\", \"SENDER\"]","                        },","                        \"paid_by_account_id\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"amount\", ","                        \"currency\", ","                        \"paid_by\", ","                        \"paid_by_account_id\"","                    ]","                }","            },","            \"live\": {\"type\":\"boolean\"},","            \"metadata\": {\"type\":\"object\"},","            \"payment_details\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"description\": {\"type\":\"string\"},","                    \"estimated_arrival_time\": {\"type\":\"string\"},","                    \"mandate_id\": {\"type\":\"string\"},","                    \"processor_details\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"processor_id\": {\"type\":\"string\"},","                            \"processor_reference\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"processor_id\"","                        ]","                    },","                    \"references\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"recipient_reference\": {\"type\":\"string\"},","                        },","                        \"required\": []","                    },","                    \"scheduled_date\": {\"type\":\"string\"},","                    \"transaction_reference_id\": {\"type\":\"string\"}","                    },","                \"required\": [","                    \"description\",","                    \"scheduled_date\",","                    \"transaction_reference_id\"","                ]","            },","            \"payout_id\": {\"type\":\"string\"},","            \"recipient\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"external_user_id\": {\"type\":\"string\"},","                    \"user_details\": {","                        \"type\":[\"array\",\"null\"],","                        \"items\": {","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details_type\": {\"type\":\"string\"},","                                \"values\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"additionalProperties\": false,","                                        \"type\": \"string\"","                                    }","                                }","                            },","                            \"required\": [","                                \"details_type\",","                                \"values\"","                            ]","                        }","                    },","                    \"name\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                    \"user_type\": {\"type\":\"string\"},","                },","                \"required\": [","                    \"external_user_id\",","                    //\"name\", TO BE ENFORCED","                    \"user_details\",","                    \"user_id\",","                    \"user_type\"","                ]","            },     ","            \"recipient_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_number\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"number\": {\"type\":\"string\"},","                            \"type\": {","                                \"type\":\"string\",","                                \"enum\": [\"IBAN\", \"LOCAL\"]","                            }","                        },","                        \"required\": [","                            \"number\",","                            \"type\"","                        ]","                    },","                    \"account_number_masked\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    },","                    \"accountholder_name\": {\"type\":\"string\"},","                    \"bank_code\": {\"type\":\"string\"},","                    \"institution_id\": {\"type\":\"string\"},","                    \"institution_name\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                },","                \"required\": [","                    \"account_number\",","                    \"account_number_masked\",","                    \"account_type\",","                    \"institution_id\",","                    \"user_id\"","                ]","            },","            \"sender\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"name\": {\"type\":\"string\"}   ","                },","                \"required\": [","                    \"name\",","                ]","            },","            \"sender_account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"account_type\": {","                        \"type\":\"string\",","                        \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                    }","                },","                \"required\": [","                    \"account_id\",","                    \"account_type\"","                ]","            },","            \"status\": {","                \"type\":\"string\",","                \"enum\": [\"CREATED\", \"FUNDED\", \"PROCESSING\", \"SUBMITTED\", \"EXECUTED\", \"CANCELLED\", \"FAILED\"]","            },","            \"transaction_date\": {\"type\":\"string\"}, // DEPRECATED","            \"transaction_time\": {\"type\":\"string\"},","            \"type\": {","                \"type\":\"string\",","                \"enum\": [\"MANUAL\", \"SCHEDULED\", \"SETTLEMENT\"]","            },","            \"updated_at\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"amount\",","            \"created_at\",","            \"currency\",","            \"live\",","            \"payment_details\",","            \"payout_id\",","            \"sender\",","            \"sender_account\",","            \"status\",","            \"type\",","            \"updated_at\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"7917de63-80f5-424a-94be-1b09b02b655f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/payouts/{{payout_id}}/cancel","description":"<p>Cancel an existing Payout, specified by its <code>payout_id</code>.</p>\n<p>Payouts can only be cancelled when their status is <code>CREATED</code>. After Finverse initiates the processing to fund or execute the payout (i.e. payout status of <code>FUNDING_IN_PRGRESS</code> or <code>PROCESSING</code>), Payouts can no longer be cancelled.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"request-parameters\">Request parameters</h2>\n<p>None</p>\n<h2 id=\"response-fields\">Response fields</h2>\n<p>The response is a Payout object.</p>\n<p>Refer to Payout object data model in <code>GET /payouts/{payout_id}</code>.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":true,"source":{"_postman_id":"81ce0d7a-f4cf-4325-ab2a-170f4751f1e0","id":"81ce0d7a-f4cf-4325-ab2a-170f4751f1e0","name":"Payouts","type":"folder"}},"urlObject":{"path":["payouts","{{payout_id}}","cancel"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"82afce73-2829-47f0-8be6-420bd4c2ddb3","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/payouts/{{payout_id}}/cancel"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1698209630"},{"key":"Date","value":"Wed, 25 Oct 2023 04:53:49 GMT"},{"key":"Content-Length","value":"1240"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": 1000,\n    \"created_at\": \"2023-10-25T04:53:49.664Z\",\n    \"currency\": \"HKD\",\n    \"fees\": [\n        {\n            \"amount\": 500,\n            \"currency\": \"HKD\",\n            \"paid_by\": \"RECIPIENT\",\n            \"paid_by_account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\"\n        }\n    ],\n    \"live\": false,\n    \"metadata\": {\n        \"employer_name\": \"Apple Inc\",\n        \"key\": \"value\"\n    },\n    \"payment_details\": {\n        \"description\": \"Description\",\n        \"mandate_id\": \"01HDH3JRCNCV7A96HQW45X6066\",\n        \"scheduled_date\": \"2023-10-25T00:00:00.000Z\",\n        \"transaction_reference_id\": \"B9KS8D\"\n    },\n    \"payout_id\": \"01HDJJV1Y0PYD2H7C6M208MPYZ\",\n    \"recipient\": {\n        \"external_user_id\": \"unique_user_id_1697599957\",\n        \"name\": \"John Doe\",\n        \"user_details\": [\n            {\n                \"details_type\": \"HK_ID\",\n                \"values\": [\n                    \"01HD0DFARTX23HW6BA7333B7SR\"\n                ]\n            }\n        ],\n        \"user_id\": \"01HD0DFAFDDA9JJ4C5X1EKK30V\",\n        \"user_type\": \"INDIVIDUAL\"\n    },\n    \"recipient_account\": {\n        \"account_id\": \"01HD0DFMNZE2B3Y4QGCY3EK7CE\",\n        \"account_number\": {\n            \"number\": \"01HD0DFMWE0QRC6EWRP2VGXGDB\",\n            \"type\": \"LOCAL\"\n        },\n        \"account_number_masked\": \"XXX45\",\n        \"account_type\": \"EXTERNAL_ACCOUNT\",\n        \"accountholder_name\": \"01HD0DFMV8QGXB16YK95SH2EB3\",\n        \"bank_code\": \"420\",\n        \"institution_id\": \"testbank-dbs-hk\",\n        \"user_id\": \"01HD0DFAFDDA9JJ4C5X1EKK30V\"\n    },\n    \"sender\": {\n        \"name\": \"Demo App\"\n    },\n    \"sender_account\": {\n        \"account_id\": \"01H5VH5YCFDVH80YZ8D0TG3HET\",\n        \"account_type\": \"SETTLEMENT_ACCOUNT\"\n    },\n    \"status\": \"CANCELLED\",\n    \"type\": \"SCHEDULED\",\n    \"updated_at\": \"2023-10-25T04:53:49.664Z\"\n}"}],"_postman_id":"7917de63-80f5-424a-94be-1b09b02b655f"}],"id":"81ce0d7a-f4cf-4325-ab2a-170f4751f1e0","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"event":[{"listen":"prerequest","script":{"id":"6d27e3b1-2fdd-4071-8539-4e3b09db5624","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"c15c936a-d6b9-4ac2-9912-b7a46d37ac63","type":"text/javascript","exec":[""]}}],"_postman_id":"81ce0d7a-f4cf-4325-ab2a-170f4751f1e0","description":""},{"name":"Reports","item":[{"name":"/mandates (List Mandates)","event":[{"listen":"test","script":{"id":"1ab84011-b746-497e-a112-cc8e048e53fe","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.total_mandates) {","    console.log(\"Total number of mandates:\", jsonData.total_mandates);","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Mandates or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"mandates\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"mandates\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"created_at\": {\"type\":\"string\"},  ","                        \"error\": {","                            \"type\": \"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details\": {\"type\":\"string\"},","                                \"error_code\": {\"type\":\"string\"},","                                \"message\": {\"type\":\"string\"},","                                \"type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                                }","                            },","                            \"required\" : [","                                \"error_code\",","                                \"message\",","                                \"type\"","                            ]","                        },","                        \"fees\": {","                            \"type\":\"array\",","                            \"items\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"amount\": {\"type\":\"integer\"},","                                    \"currency\": {\"type\":\"string\"},","                                    \"paid_by\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                    },","                                    \"paid_by_account_id\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"amount\", ","                                    \"currency\", ","                                    \"paid_by\", ","                                    \"paid_by_account_id\"","                                ]","                            }","                        },","                        \"mandate_details\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"collection_entity_name\": {\"type\":\"string\"},","                                \"currency\": {\"type\":\"string\"},","                                \"dda_reference\": {\"type\":\"string\"},","                                \"description\": {\"type\":\"string\"},","                                \"end_date\": {\"type\":\"string\"},","                                \"mandate_bank_reference\": {\"type\":\"string\"},","                                \"payment_schedule\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"amount\": {\"type\":\"integer\"},","                                        \"frequency\": {\"type\":\"string\"}","                                    },","                                    \"required\": [","                                        \"amount\",","                                        \"frequency\"","                                    ]","                                },","                                \"processor_entity_name\": {\"type\":\"string\"},","                                \"start_date\": {\"type\":\"string\"},","                                \"transaction_limits\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"max_period_amount\": {\"type\":\"integer\"},","                                        \"max_period_count\": {\"type\":\"integer\"},","                                        \"max_transaction_amount\": {\"type\":\"integer\"},","                                        \"max_transaction_amount_set_by_payer_initial\": {\"type\":\"integer\"},","                                        \"period\": {\"type\":\"string\"}","                                    },","                                    \"required\": [ ]","                                }","                            },","                            \"required\": [","                                \"currency\",","                                \"description\"","                            ]","                        },","                        \"mandate_id\": {\"type\":\"string\"},","                        \"metadata\": {\"type\":\"object\"},","                        \"payment_method_id\": {\"type\":\"string\"},","                        \"recipient\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"name\": {\"type\":\"string\"}","                            },","                            \"required\": [","                                \"name\"","                            ]","                        },","                        \"recipient_account\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"account_id\": {\"type\":\"string\"},","                                \"account_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                },","                                \"name\": {\"type\":\"string\"}","                            },","                            \"required\": [","                                \"account_id\",","                                \"account_type\"","                            ]","                        },","                        \"sender\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"external_user_id\": {\"type\":\"string\"},","                                \"name\": {\"type\":\"string\"},","                                \"user_details\": {","                                    \"type\":[\"array\",\"null\"],","                                    \"items\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"details_type\": {","                                                \"type\":\"string\",","                                                \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                            },","                                            \"values\": {","                                                \"type\": \"array\",","                                                \"items\": {","                                                    \"type\": \"string\"","                                                }","                                            }","                                        },","                                        \"required\": [","                                            \"details_type\",","                                            \"values\"","                                        ]","                                    }","                                },","                                \"user_id\": {\"type\":\"string\"},","                                \"user_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                                }","                            },","                            \"required\": [","                                \"external_user_id\",","                                //\"name\", // TO BE ENFORCED","                                \"user_id\",","                                \"user_type\"","                            ]","                        },","                        \"sender_account\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"account_id\": {\"type\":\"string\"},","                                \"account_number\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"number\": {\"type\":\"string\"},","                                        \"type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"IBAN\", \"LOCAL\"]","                                        }","                                    },","                                    \"required\": [","                                        \"number\",","                                        \"type\"","                                    ]","                                },","                                \"account_number_masked\": {\"type\":\"string\"},","                                \"account_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                },","                                \"accountholder_name\": {\"type\":\"string\"},","                                \"bank_code\": {\"type\":\"string\"},","                                \"institution_id\": {\"type\":\"string\"},","                                \"institution_name\": {\"type\":\"string\"},","                                \"user_id\": {\"type\":\"string\"},","                            },","                            \"required\": [","                                \"account_type\",","                                \"user_id\"","                            ]","                        },","                        \"status\": {","                            \"type\":\"string\",","                            \"enum\": [\"AUTHORIZATION_REQUIRED\", \"CLOSED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"FAILED\"]","                        },","                        \"updated_at\": {\"type\":\"string\"}","                    },","                    \"required\" : [","                        \"created_at\",","                        \"fees\",","                        \"mandate_details\",","                        \"mandate_id\",","                        \"payment_method_id\",","                        \"recipient\",","                        \"sender\",","                        \"status\",","                        \"updated_at\"","                    ]","                }","            },","            \"total_mandates\": {\"type\":\"number\"},","        },","        \"required\" : [","            \"mandates\",","            \"total_mandates\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","// ADDITIONAL TESTS - START","pm.test(\"At least 1 mandate found\", function() {","    pm.expect(jsonData.mandates.length).to.be.at.least(1)","    });","// ADDITIONAL TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"fdade673-b6fb-463c-9f97-1d4b8ed6b0b5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"url":"https://api.prod.finverse.net/mandates?offset=0&limit=100&date_to=2026-12-31&date_from=2026-01-01","description":"<p>List Mandates associated with a Customer App.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"url-query-parameters\">URL query parameters</h2>\n<p>The following optional URL query parameters can be used to filter the list of items to be returned.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>date_from</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>Start date for filtering (applied to Mandate <code>updated_at</code> field)</td>\n</tr>\n<tr>\n<td>date_to</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>End date for filtering (applied to Mandate <code>updated_at</code> field)</td>\n</tr>\n<tr>\n<td>institution_id</td>\n<td>string, optional</td>\n<td>Filter for a specific Institution ID</td>\n</tr>\n<tr>\n<td>sender_type</td>\n<td>string, optional</td>\n<td>Filter for a specific sender type. Refer to Mandate sender_type in <code>GET /mandates/{mandate_id}</code></td>\n</tr>\n<tr>\n<td>statuses</td>\n<td>array of strings</td>\n<td>Comma-separated filter for specific Mandate statuses. Example: <code>statuses=SUCCEEDED,FAILED</code>  <br />  <br />Refer to mandate statuses in <code>GET /mandates/{mandate_id}</code></td>\n</tr>\n<tr>\n<td>limit</td>\n<td>integer, optional</td>\n<td>Maximum number of records per page (default: 500, max: 1000)</td>\n</tr>\n<tr>\n<td>offset</td>\n<td>integer, optional</td>\n<td>Pagination offset (default: 0)</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-fields\">Response fields</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>mandates</td>\n<td>array of Mandate objects</td>\n<td>List of Mandate objects that satisfy the filters in the request. Refer to Mandate object data model in <code>GET /mandates/{mandate_id}</code></td>\n</tr>\n<tr>\n<td>total_mandates</td>\n<td>integer</td>\n<td>Total number of Mandate records available for the selected filtering criteria (can be used to inform pagination requests)</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["mandates"],"host":["https://api.prod.finverse.net"],"query":[{"disabled":true,"key":"sender_type","value":"INDIVIDUAL"},{"disabled":true,"key":"statuses","value":"SUCCEEDED"},{"disabled":true,"key":"institution_id","value":"hsbc-hk"},{"key":"offset","value":"0"},{"key":"limit","value":"100"},{"key":"date_to","value":"2026-12-31"},{"key":"date_from","value":"2026-01-01"}],"variable":[]}},"response":[{"id":"557e7ba5-8de8-4b95-ba3e-90f76b2fa754","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"url":{"raw":"https://api.prod.finverse.net/mandates?date_from=2022-11-15&date_to=2022-11-30&sender_type=INDIVIDUAL&statuses=SUCCEEDED&user_id=user id 1&limit=10&offset=0","host":["https://api.prod.finverse.net"],"path":["mandates"],"query":[{"key":"date_from","value":"2022-11-15"},{"key":"date_to","value":"2022-11-30"},{"key":"institution_id","value":"hsbc-hk","type":"text","disabled":true},{"key":"sender_type","value":"INDIVIDUAL","description":"\"INDIVIDUAL\", \"BUSINESS\""},{"key":"statuses","value":"SUCCEEDED","description":"\"AUTHORIZATION_REQUIRED\",  \"AUTHORIZING\", \"PROCESSING\", \"SUBMITTED\", \"SUCCEEDED\", \"FAILED\", \"REVOKED\""},{"key":"user_id","value":"user id 1"},{"key":"limit","value":"10"},{"key":"offset","value":"0"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Thu, 08 Dec 2022 10:02:57 GMT"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"mandates\": [\n        {\n            \"created_at\": \"2025-06-21T06:30:22.964Z\",\n            \"fees\": [\n                {\n                    \"amount\": 0,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"mandate_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"currency\": \"HKD\",\n                \"dda_reference\": \"FINVERSE T-62F2-FINV\",\n                \"description\": \"Test Mandate\",\n                \"end_date\": \"2025-12-01\",\n                \"mandate_bank_reference\": \"01JY8JWMAV62AVC00FP2EC6509\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"start_date\": \"2025-06-21\",\n                \"transaction_limits\": {\n                    \"max_period_amount\": 10000,\n                    \"max_period_count\": 10,\n                    \"max_transaction_amount\": 10000,\n                    \"max_transaction_amount_set_by_payer_initial\": 5000,\n                    \"period\": \"MONTHLY\"\n                }\n            },\n            \"mandate_id\": \"01JY8JWDY51SYHP006XZBAMVGN\",\n            \"metadata\": {\n                \"employer_name\": \"Apple Inc\",\n                \"key\": \"value\"\n            },\n            \"payment_method_id\": \"01JY8JWE50618D9RGH44AR884F\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1_1750487415\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8JWE3NG8CJ7DVJZJC3HMJT\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8JWKX2HSZJ500DNEJ3JGHQ\",\n                \"account_number\": {\n                    \"number\": \"01JY8JWM06NV1VNCPM6D5JJ9Y9\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"XXX45\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8JWKZRZ32FFE4G0FPM19H1\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8JWE3NG8CJ7DVJZJC3HMJT\"\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T06:30:22.964Z\"\n        },\n        {\n            \"created_at\": \"2025-06-21T05:58:18.257Z\",\n            \"fees\": [\n                {\n                    \"amount\": 0,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"mandate_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"currency\": \"HKD\",\n                \"dda_reference\": \"FINVERSE T-R885-FINV\",\n                \"description\": \"Payment link mandate\",\n                \"mandate_bank_reference\": \"01JY8H1X2H8FSQHV5DPPBAXTD8\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"start_date\": \"2025-06-21\",\n                \"transaction_limits\": {\n                    \"max_transaction_amount\": 500000\n                }\n            },\n            \"mandate_id\": \"01JY8H1ATJXEZGV3EDCK0MWY6Z\",\n            \"payment_method_id\": \"01JY8H1AX3TRC1TBHMB45WASEH\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750485452\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8H0J30ZBW17EG37128HRPN\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8H1W0C66V5F8NJW9CG62PF\",\n                \"account_number\": {\n                    \"number\": \"01JY8H1W6XJETFS21BEPV0BGEC\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"434XXXX49\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8H1W5T5FGB22TZCDBGDM33\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8H0J30ZBW17EG37128HRPN\"\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T05:58:18.257Z\"\n        },\n        {\n            \"created_at\": \"2025-06-21T05:35:23.088Z\",\n            \"fees\": [\n                {\n                    \"amount\": 0,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"mandate_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"currency\": \"HKD\",\n                \"dda_reference\": \"FINVERSE T-8F52-FINV\",\n                \"description\": \"Payment link mandate\",\n                \"mandate_bank_reference\": \"01JY8FQX8ZAENPWSRG87961DXC\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"start_date\": \"2025-06-21\",\n                \"transaction_limits\": {\n                    \"max_transaction_amount\": 500000,\n                    \"max_transaction_amount_set_by_payer_initial\": 5000\n                }\n            },\n            \"mandate_id\": \"01JY8FQHTEX7FAJMM4SGK4GRSZ\",\n            \"payment_method_id\": \"01JY8FQHXCZXWYN2EG383YAGR2\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750484076\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8FPJ0XFTEBPH5VHF379XF3\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8FQWS1D4ZX8PJJS9ZY6B58\",\n                \"account_number\": {\n                    \"number\": \"01JY8FQWYTG44WF6RECHN6M09F\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"300XXXX03\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8FQWXZN9CFXFKPPKEHTE2M\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8FPJ0XFTEBPH5VHF379XF3\"\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T05:35:23.088Z\"\n        },\n        {\n            \"created_at\": \"2025-06-21T04:31:20.442Z\",\n            \"fees\": [\n                {\n                    \"amount\": 0,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"mandate_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"currency\": \"HKD\",\n                \"dda_reference\": \"FINVERSE T-2X6K-FINV\",\n                \"description\": \"Test Mandate\",\n                \"end_date\": \"2025-12-01\",\n                \"mandate_bank_reference\": \"01JY8C2N74X3E4Y2A5YT030KCD\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"start_date\": \"2025-06-21\",\n                \"transaction_limits\": {\n                    \"max_period_amount\": 10000,\n                    \"max_period_count\": 10,\n                    \"max_transaction_amount\": 10000,\n                    \"period\": \"MONTHLY\"\n                }\n            },\n            \"mandate_id\": \"01JY8C0V23FPKZXH1YAHC9JBD5\",\n            \"metadata\": {\n                \"employer_name\": \"Apple Inc\",\n                \"key\": \"value\"\n            },\n            \"payment_method_id\": \"01JY8C0V652P775DQG7DXH9HNR\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1_1750480219\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8C0V4VMZRC8YM399JF84BP\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8C2MR456G4EXKVZHB45WPR\",\n                \"account_number\": {\n                    \"number\": \"01JY8C2MWT0M5NXR1V7FW8ZJEG\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"XXX45\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8C2MW9WT09SK3AA0928518\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8C0V4VMZRC8YM399JF84BP\"\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T04:31:20.442Z\"\n        },\n        {\n            \"created_at\": \"2025-06-21T04:22:58.369Z\",\n            \"fees\": [],\n            \"mandate_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"currency\": \"SGD\",\n                \"dda_reference\": \"DDA-1234567890\",\n                \"description\": \"Paper eGIRO Mandate\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"transaction_limits\": {\n                    \"max_period_amount\": 100000000,\n                    \"max_period_count\": 100000,\n                    \"max_transaction_amount\": 100000000,\n                    \"period\": \"MONTHLY\"\n                }\n            },\n            \"mandate_id\": \"01JY8BKCGV63S66V3VDSTXF29D\",\n            \"payment_method_id\": \"01JY8BKCGV63S66V3VDS3G6NX3\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750479613\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8BECD0ARSWMA0YX0DRY57A\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8BF0GD7H9WWSD892FP5FJT\",\n                \"account_number\": {\n                    \"number\": \"01JY8BF0Q7VGR0H60M00ZG4HXZ\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"030XXXXX4004\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8BF0MPCWYC25B4AFJNGGSQ\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8BECD0ARSWMA0YX0DRY57A\"\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T04:22:58.369Z\"\n        },\n        {\n            \"created_at\": \"2025-06-21T04:20:38.049Z\",\n            \"fees\": [\n                {\n                    \"amount\": 0,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"mandate_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"currency\": \"HKD\",\n                \"dda_reference\": \"FINVERSE T-8M2Z-FINV\",\n                \"description\": \"Payment link mandate\",\n                \"mandate_bank_reference\": \"01JY8BF14GNY1N0TBA5H168X0E\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"start_date\": \"2025-06-21\",\n                \"transaction_limits\": {\n                    \"max_transaction_amount\": 500000\n                }\n            },\n            \"mandate_id\": \"01JY8BEMF3AGBQ7C9CJWTV2W4X\",\n            \"payment_method_id\": \"01JY8BEMJZQQWGFTCKNSJGB0BD\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750479613\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8BECD0ARSWMA0YX0DRY57A\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8BF0GD7H9WWSD892FP5FJT\",\n                \"account_number\": {\n                    \"number\": \"01JY8BF0Q7VGR0H60M00ZG4HXZ\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"030XXXXX4004\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8BF0MPCWYC25B4AFJNGGSQ\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8BECD0ARSWMA0YX0DRY57A\"\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T04:20:38.049Z\"\n        },\n        {\n            \"created_at\": \"2025-06-21T04:15:07.903Z\",\n            \"fees\": [\n                {\n                    \"amount\": 0,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"mandate_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"currency\": \"HKD\",\n                \"dda_reference\": \"FINVERSE T-0KMR-FINV\",\n                \"description\": \"Payment link mandate\",\n                \"mandate_bank_reference\": \"01JY8B4YT7GHP4625QEJNFN5DV\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"start_date\": \"2025-06-21\",\n                \"transaction_limits\": {\n                    \"max_transaction_amount\": 500000\n                }\n            },\n            \"mandate_id\": \"01JY8B4MK6T0KFYPV028FRW1YS\",\n            \"payment_method_id\": \"01JY8B4MPYMWNJ7XT603HV2SZ8\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750479256\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8B3FK244XNJCZV2J2PBRMN\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8B4XY0N1AVRR88WWHC7NK2\",\n                \"account_number\": {\n                    \"number\": \"01JY8B4Y2W8GJGVV1G6ZZNAPE9\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"404XXXXX4040\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8B4Y1HQFKHXKG2RGA0CZZ3\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8B3FK244XNJCZV2J2PBRMN\"\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T04:15:07.903Z\"\n        }\n    ],\n    \"total_mandates\": 7\n}"}],"_postman_id":"fdade673-b6fb-463c-9f97-1d4b8ed6b0b5"},{"name":"/mandates/details (List Mandates including plaintext sensitive account data)","event":[{"listen":"test","script":{"id":"1ab84011-b746-497e-a112-cc8e048e53fe","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.total_mandates) {","    console.log(\"Total number of mandates:\", jsonData.total_mandates);","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Mandates or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"mandates\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"mandates\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"created_at\": {\"type\":\"string\"},  ","                        \"error\": {","                            \"type\": \"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details\": {\"type\":\"string\"},","                                \"error_code\": {\"type\":\"string\"},","                                \"message\": {\"type\":\"string\"},","                                \"type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                                }","                            },","                            \"required\" : [","                                \"error_code\",","                                \"message\",","                                \"type\"","                            ]","                        },","                        \"fees\": {","                            \"type\":\"array\",","                            \"items\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"amount\": {\"type\":\"integer\"},","                                    \"currency\": {\"type\":\"string\"},","                                    \"paid_by\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                    },","                                    \"paid_by_account_id\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"amount\", ","                                    \"currency\", ","                                    \"paid_by\", ","                                    \"paid_by_account_id\"","                                ]","                            }","                        },","                        \"mandate_details\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"collection_entity_name\": {\"type\":\"string\"},","                                \"currency\": {\"type\":\"string\"},","                                \"dda_reference\": {\"type\":\"string\"},","                                \"description\": {\"type\":\"string\"},","                                \"end_date\": {\"type\":\"string\"},","                                \"mandate_bank_reference\": {\"type\":\"string\"},","                                \"payment_schedule\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"amount\": {\"type\":\"integer\"},","                                        \"frequency\": {\"type\":\"string\"}","                                    },","                                    \"required\": [","                                        \"amount\",","                                        \"frequency\"","                                    ]","                                },","                                \"processor_entity_name\": {\"type\":\"string\"},","                                \"start_date\": {\"type\":\"string\"},","                                \"transaction_limits\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"max_period_amount\": {\"type\":\"integer\"},","                                        \"max_period_count\": {\"type\":\"integer\"},","                                        \"max_transaction_amount\": {\"type\":\"integer\"},","                                        \"max_transaction_amount_set_by_payer_initial\": {\"type\":\"integer\"},","                                        \"period\": {\"type\":\"string\"}","                                    },","                                    \"required\": [ ]","                                }","                            },","                            \"required\": [","                                \"currency\",","                                \"description\"","                            ]","                        },","                        \"mandate_id\": {\"type\":\"string\"},","                        \"metadata\": {\"type\":\"object\"},","                        \"payment_method_id\": {\"type\":\"string\"},","                        \"recipient\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"name\": {\"type\":\"string\"}","                            },","                            \"required\": [","                                \"name\"","                            ]","                        },","                        \"recipient_account\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"account_id\": {\"type\":\"string\"},","                                \"account_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                },","                                \"name\": {\"type\":\"string\"}","                            },","                            \"required\": [","                                \"account_id\",","                                \"account_type\"","                            ]","                        },","                        \"sender\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"external_user_id\": {\"type\":\"string\"},","                                \"name\": {\"type\":\"string\"},","                                \"user_details\": {","                                    \"type\":[\"array\",\"null\"],","                                    \"items\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"details_type\": {","                                                \"type\":\"string\",","                                                \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                            },","                                            \"values\": {","                                                \"type\": \"array\",","                                                \"items\": {","                                                    \"type\": \"string\"","                                                }","                                            }","                                        },","                                        \"required\": [","                                            \"details_type\",","                                            \"values\"","                                        ]","                                    }","                                },","                                \"user_id\": {\"type\":\"string\"},","                                \"user_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                                }","                            },","                            \"required\": [","                                \"external_user_id\",","                                //\"name\", // TO BE ENFORCED","                                \"user_id\",","                                \"user_type\"","                            ]","                        },","                        \"sender_account\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"account_id\": {\"type\":\"string\"},","                                \"account_number\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"number\": {\"type\":\"string\"},","                                        \"number_plaintext\": {\"type\":\"string\"},","                                        \"type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"IBAN\", \"LOCAL\"]","                                        }","                                    },","                                    \"required\": [","                                        \"number\",","                                        \"type\"","                                    ]","                                },","                                \"account_number_masked\": {\"type\":\"string\"},","                                \"account_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                },","                                \"accountholder_name\": {\"type\":\"string\"},","                                \"accountholder_name_plaintext\": {\"type\":\"string\"},","                                \"bank_code\": {\"type\":\"string\"},","                                \"institution_id\": {\"type\":\"string\"},","                                \"institution_name\": {\"type\":\"string\"},","                                \"user_id\": {\"type\":\"string\"},","                            },","                            \"required\": [","                                \"account_type\",","                                \"user_id\"","                            ]","                        },","                        \"status\": {","                            \"type\":\"string\",","                            \"enum\": [\"AUTHORIZATION_REQUIRED\", \"CLOSED\", \"PROCESSING\", \"READY_TO_SUBMIT\", \"SUBMITTED\", \"SUCCEEDED\", \"CANCELLED\", \"FAILED\"]","                        },","                        \"updated_at\": {\"type\":\"string\"}","                    },","                    \"required\" : [","                        \"created_at\",","                        \"fees\",","                        \"mandate_details\",","                        \"mandate_id\",","                        \"payment_method_id\",","                        \"recipient\",","                        \"sender\",","                        \"status\",","                        \"updated_at\"","                    ]","                }","            },","            \"total_mandates\": {\"type\":\"number\"},","        },","        \"required\" : [","            \"mandates\",","            \"total_mandates\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","// ADDITIONAL TESTS - START","pm.test(\"At least 1 mandate found\", function() {","    pm.expect(jsonData.mandates.length).to.be.at.least(1)","    });","// ADDITIONAL TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"129d2a63-4f1f-4a7b-a58a-9ba873c7f546","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"url":"https://api.prod.finverse.net/mandates/details?limit=10&offset=0&date_to=2026-12-31&date_from=2026-01-01","description":"<p>List Mandates associated with a Customer App, including sensitive account details of the Sender Account (such as plaintext account number and accountholder name).</p>\n<p><strong>Access:</strong> This flow is available on demand for Finverse customers who need to retrieve sensitive account details on each sender account (e.g. for KYC or adhoc payment purposes). Contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> to request access.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"url-query-parameters\">URL query parameters</h2>\n<p>Same as <code>GET /mandates</code>.</p>\n<h2 id=\"response-fields\">Response fields</h2>\n<p>Same as <code>GET /mandates</code> except for the <code>mandates.sender_account</code> object.</p>\n<h3 id=\"sender_account-object\">sender_account (object)</h3>\n<p>Same as <code>GET /payment_accounts</code> except for the following fields:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>account_number</td>\n<td>object</td>\n<td>Bank account number details, including account number in plaintext. See below.</td>\n</tr>\n<tr>\n<td>accountholder_name_plaintext</td>\n<td>string, optional</td>\n<td>Accountholder name in plaintext.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"account_number-object\">account_number (object)</h3>\n<p>Bank account number details, including account number in plaintext.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>number</td>\n<td>string</td>\n<td>Account number.  <br />  <br />Account numbers in responses are tokenized by Finverse.</td>\n</tr>\n<tr>\n<td>number_plaintext</td>\n<td>string</td>\n<td>Account number in plaintext</td>\n</tr>\n<tr>\n<td>type</td>\n<td>string ENUM</td>\n<td>Type of account number format. Possible values: <code>IBAN</code>, <code>LOCAL</code></td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["mandates","details"],"host":["https://api.prod.finverse.net"],"query":[{"disabled":true,"key":"sender_type","value":"INDIVIDUAL"},{"disabled":true,"key":"statuses","value":"SUCCEEDED"},{"key":"limit","value":"10"},{"key":"offset","value":"0"},{"disabled":true,"key":"institution_id","value":"hsbc-hk"},{"key":"date_to","value":"2026-12-31"},{"key":"date_from","value":"2026-01-01"}],"variable":[]}},"response":[{"id":"c3670108-d496-44a8-be5c-2ba610997d50","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":{"raw":"https://api.prod.finverse.net/mandates/details?sender_type=INDIVIDUAL&statuses=SUCCEEDED&limit=10&offset=0&date_to=2025-12-01&date_from=2025-06-01","host":["https://api.prod.finverse.net"],"path":["mandates","details"],"query":[{"key":"sender_type","value":"INDIVIDUAL"},{"key":"statuses","value":"SUCCEEDED"},{"key":"limit","value":"10"},{"key":"offset","value":"0"},{"key":"institution_id","value":"hsbc-hk","disabled":true},{"key":"date_to","value":"2025-12-01"},{"key":"date_from","value":"2025-06-01"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1750499299"},{"key":"Date","value":"Sat, 21 Jun 2025 09:48:20 GMT"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"},{"key":"Transfer-Encoding","value":"chunked"}],"cookie":[],"responseTime":null,"body":"{\n    \"mandates\": [\n        {\n            \"created_at\": \"2025-06-21T06:30:22.964Z\",\n            \"fees\": [\n                {\n                    \"amount\": 0,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"mandate_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"currency\": \"HKD\",\n                \"dda_reference\": \"FINVERSE T-62F2-FINV\",\n                \"description\": \"Test Mandate\",\n                \"end_date\": \"2025-12-01\",\n                \"mandate_bank_reference\": \"01JY8JWMAV62AVC00FP2EC6509\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"start_date\": \"2025-06-21\",\n                \"transaction_limits\": {\n                    \"max_period_amount\": 10000,\n                    \"max_period_count\": 10,\n                    \"max_transaction_amount\": 10000,\n                    \"period\": \"MONTHLY\"\n                }\n            },\n            \"mandate_id\": \"01JY8JWDY51SYHP006XZBAMVGN\",\n            \"metadata\": {\n                \"employer_name\": \"Apple Inc\",\n                \"key\": \"value\"\n            },\n            \"payment_method_id\": \"01JY8JWE50618D9RGH44AR884F\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1_1750487415\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8JWE3NG8CJ7DVJZJC3HMJT\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8JWKX2HSZJ500DNEJ3JGHQ\",\n                \"account_number\": {\n                    \"number\": \"01JY8JWM06NV1VNCPM6D5JJ9Y9\",\n                    \"number_plaintext\": \"12345\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"XXX45\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8JWKZRZ32FFE4G0FPM19H1\",\n                \"accountholder_name_plaintext\": \"John Doe\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8JWE3NG8CJ7DVJZJC3HMJT\"\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T06:30:22.964Z\"\n        },\n        {\n            \"created_at\": \"2025-06-21T05:58:18.257Z\",\n            \"fees\": [\n                {\n                    \"amount\": 0,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"mandate_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"currency\": \"HKD\",\n                \"dda_reference\": \"FINVERSE T-R885-FINV\",\n                \"description\": \"Payment link mandate\",\n                \"mandate_bank_reference\": \"01JY8H1X2H8FSQHV5DPPBAXTD8\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"start_date\": \"2025-06-21\",\n                \"transaction_limits\": {\n                    \"max_transaction_amount\": 500000\n                }\n            },\n            \"mandate_id\": \"01JY8H1ATJXEZGV3EDCK0MWY6Z\",\n            \"payment_method_id\": \"01JY8H1AX3TRC1TBHMB45WASEH\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750485452\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8H0J30ZBW17EG37128HRPN\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8H1W0C66V5F8NJW9CG62PF\",\n                \"account_number\": {\n                    \"number\": \"01JY8H1W6XJETFS21BEPV0BGEC\",\n                    \"number_plaintext\": \"434949449\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"434XXXX49\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8H1W5T5FGB22TZCDBGDM33\",\n                \"accountholder_name_plaintext\": \"John Doe\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8H0J30ZBW17EG37128HRPN\"\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T05:58:18.257Z\"\n        },\n        {\n            \"created_at\": \"2025-06-21T05:35:23.088Z\",\n            \"fees\": [\n                {\n                    \"amount\": 0,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"mandate_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"currency\": \"HKD\",\n                \"dda_reference\": \"FINVERSE T-8F52-FINV\",\n                \"description\": \"Payment link mandate\",\n                \"mandate_bank_reference\": \"01JY8FQX8ZAENPWSRG87961DXC\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"start_date\": \"2025-06-21\",\n                \"transaction_limits\": {\n                    \"max_transaction_amount\": 500000\n                }\n            },\n            \"mandate_id\": \"01JY8FQHTEX7FAJMM4SGK4GRSZ\",\n            \"payment_method_id\": \"01JY8FQHXCZXWYN2EG383YAGR2\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750484076\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8FPJ0XFTEBPH5VHF379XF3\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8FQWS1D4ZX8PJJS9ZY6B58\",\n                \"account_number\": {\n                    \"number\": \"01JY8FQWYTG44WF6RECHN6M09F\",\n                    \"number_plaintext\": \"300030303\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"300XXXX03\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8FQWXZN9CFXFKPPKEHTE2M\",\n                \"accountholder_name_plaintext\": \"John Doe\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8FPJ0XFTEBPH5VHF379XF3\"\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T05:35:23.088Z\"\n        },\n        {\n            \"created_at\": \"2025-06-21T04:31:20.442Z\",\n            \"fees\": [\n                {\n                    \"amount\": 0,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"mandate_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"currency\": \"HKD\",\n                \"dda_reference\": \"FINVERSE T-2X6K-FINV\",\n                \"description\": \"Test Mandate\",\n                \"end_date\": \"2025-12-01\",\n                \"mandate_bank_reference\": \"01JY8C2N74X3E4Y2A5YT030KCD\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"start_date\": \"2025-06-21\",\n                \"transaction_limits\": {\n                    \"max_period_amount\": 10000,\n                    \"max_period_count\": 10,\n                    \"max_transaction_amount\": 10000,\n                    \"period\": \"MONTHLY\"\n                }\n            },\n            \"mandate_id\": \"01JY8C0V23FPKZXH1YAHC9JBD5\",\n            \"metadata\": {\n                \"employer_name\": \"Apple Inc\",\n                \"key\": \"value\"\n            },\n            \"payment_method_id\": \"01JY8C0V652P775DQG7DXH9HNR\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1_1750480219\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8C0V4VMZRC8YM399JF84BP\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8C2MR456G4EXKVZHB45WPR\",\n                \"account_number\": {\n                    \"number\": \"01JY8C2MWT0M5NXR1V7FW8ZJEG\",\n                    \"number_plaintext\": \"12345\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"XXX45\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8C2MW9WT09SK3AA0928518\",\n                \"accountholder_name_plaintext\": \"John Doe\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8C0V4VMZRC8YM399JF84BP\"\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T04:31:20.442Z\"\n        },\n        {\n            \"created_at\": \"2025-06-21T04:22:58.369Z\",\n            \"fees\": [],\n            \"mandate_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"currency\": \"SGD\",\n                \"dda_reference\": \"DDA-1234567890\",\n                \"description\": \"Paper eGIRO Mandate\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"transaction_limits\": {\n                    \"max_period_amount\": 100000000,\n                    \"max_period_count\": 100000,\n                    \"max_transaction_amount\": 100000000,\n                    \"period\": \"MONTHLY\"\n                }\n            },\n            \"mandate_id\": \"01JY8BKCGV63S66V3VDSTXF29D\",\n            \"payment_method_id\": \"01JY8BKCGV63S66V3VDS3G6NX3\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750479613\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8BECD0ARSWMA0YX0DRY57A\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8BF0GD7H9WWSD892FP5FJT\",\n                \"account_number\": {\n                    \"number\": \"01JY8BF0Q7VGR0H60M00ZG4HXZ\",\n                    \"number_plaintext\": \"030404404004\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"030XXXXX4004\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8BF0MPCWYC25B4AFJNGGSQ\",\n                \"accountholder_name_plaintext\": \"John Doe\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8BECD0ARSWMA0YX0DRY57A\"\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T04:22:58.369Z\"\n        },\n        {\n            \"created_at\": \"2025-06-21T04:20:38.049Z\",\n            \"fees\": [\n                {\n                    \"amount\": 0,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"mandate_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"currency\": \"HKD\",\n                \"dda_reference\": \"FINVERSE T-8M2Z-FINV\",\n                \"description\": \"Payment link mandate\",\n                \"mandate_bank_reference\": \"01JY8BF14GNY1N0TBA5H168X0E\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"start_date\": \"2025-06-21\",\n                \"transaction_limits\": {\n                    \"max_transaction_amount\": 500000\n                }\n            },\n            \"mandate_id\": \"01JY8BEMF3AGBQ7C9CJWTV2W4X\",\n            \"payment_method_id\": \"01JY8BEMJZQQWGFTCKNSJGB0BD\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750479613\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8BECD0ARSWMA0YX0DRY57A\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8BF0GD7H9WWSD892FP5FJT\",\n                \"account_number\": {\n                    \"number\": \"01JY8BF0Q7VGR0H60M00ZG4HXZ\",\n                    \"number_plaintext\": \"030404404004\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"030XXXXX4004\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8BF0MPCWYC25B4AFJNGGSQ\",\n                \"accountholder_name_plaintext\": \"John Doe\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8BECD0ARSWMA0YX0DRY57A\"\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T04:20:38.049Z\"\n        },\n        {\n            \"created_at\": \"2025-06-21T04:15:07.903Z\",\n            \"fees\": [\n                {\n                    \"amount\": 0,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"mandate_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"currency\": \"HKD\",\n                \"dda_reference\": \"FINVERSE T-0KMR-FINV\",\n                \"description\": \"Payment link mandate\",\n                \"mandate_bank_reference\": \"01JY8B4YT7GHP4625QEJNFN5DV\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"start_date\": \"2025-06-21\",\n                \"transaction_limits\": {\n                    \"max_transaction_amount\": 500000\n                }\n            },\n            \"mandate_id\": \"01JY8B4MK6T0KFYPV028FRW1YS\",\n            \"payment_method_id\": \"01JY8B4MPYMWNJ7XT603HV2SZ8\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750479256\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8B3FK244XNJCZV2J2PBRMN\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8B4XY0N1AVRR88WWHC7NK2\",\n                \"account_number\": {\n                    \"number\": \"01JY8B4Y2W8GJGVV1G6ZZNAPE9\",\n                    \"number_plaintext\": \"404040404040\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"404XXXXX4040\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8B4Y1HQFKHXKG2RGA0CZZ3\",\n                \"accountholder_name_plaintext\": \"John Doe\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8B3FK244XNJCZV2J2PBRMN\"\n            },\n            \"status\": \"SUCCEEDED\",\n            \"updated_at\": \"2025-06-21T04:15:07.903Z\"\n        }\n    ],\n    \"total_mandates\": 7\n}"},{"id":"75d078ca-7a36-4532-b1a3-61fd5a6c9aa3","name":"Error (Not authorized for this endpoint, contact support)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":{"raw":"https://api.prod.finverse.net/mandates/details?sender_type=INDIVIDUAL&statuses=SUCCEEDED&limit=10&offset=0&date_from=2024-04-01&date_to=2024-04-05","host":["https://api.prod.finverse.net"],"path":["mandates","details"],"query":[{"key":"institution_id","value":"hsbc-hk","type":"text","disabled":true},{"key":"sender_type","value":"INDIVIDUAL","description":"\"INDIVIDUAL\", \"BUSINESS\""},{"key":"statuses","value":"SUCCEEDED","description":"\"AUTHORIZATION_REQUIRED\",  \"AUTHORIZING\", \"PROCESSING\", \"SUBMITTED\", \"SUCCEEDED\", \"FAILED\", \"REVOKED\""},{"key":"limit","value":"10"},{"key":"offset","value":"0"},{"key":"date_from","value":"2024-04-01"},{"key":"date_to","value":"2024-04-05"}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1712547129"},{"key":"Date","value":"Mon, 08 Apr 2024 03:32:09 GMT"},{"key":"Content-Length","value":"284"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 401,\n    \"error\": {\n        \"code\": \"NOT_AUTHORIZED\",\n        \"details\": \"Invalid bearer token\",\n        \"error_code\": \"NOT_AUTHORIZED\",\n        \"message\": \"Authorization failed. Please review authorization requirements in API documentation.\",\n        \"request_id\": \"1712547129\",\n        \"type\": \"API_ERROR\"\n    },\n    \"message\": \"Invalid bearer token\"\n}"}],"_postman_id":"129d2a63-4f1f-4a7b-a58a-9ba873c7f546"},{"name":"/payments (List Payments)","event":[{"listen":"test","script":{"id":"9190e41d-ae45-454f-ab24-ebca65477113","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.total_payments) {","    console.log(\"Total number of payments:\", jsonData.total_payments);","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payments or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"payments\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"payments\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"amount\": {\"type\":\"integer\"},","                        \"amount_total_with_surcharge\": {\"type\":\"integer\"},","                        \"created_at\": {\"type\":\"string\"},","                        \"currency\": {\"type\":\"string\"},","                        \"error\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details\": {\"type\":\"string\"},","                                \"error_code\": {\"type\":\"string\"},","                                \"message\": {\"type\":\"string\"},","                                \"type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                                }","                            },","                            \"required\": [","                                \"error_code\",","                                \"message\",","                                \"type\"","                            ] ","                        },","                        \"fees\": {","                            \"type\":\"array\",","                            \"items\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"amount\": {\"type\":\"integer\"},","                                    \"currency\": {\"type\":\"string\"},","                                    \"paid_by\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                    },","                                    \"paid_by_account_id\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"amount\", ","                                    \"currency\", ","                                    \"paid_by\", ","                                    \"paid_by_account_id\"","                                ]","                            }","                        },","                        \"metadata\": {\"type\":\"object\"},","                        \"payment_details\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"collection_entity_name\": {\"type\":\"string\"},","                                \"description\": {\"type\":\"string\"},","                                \"external_transaction_reference\": {\"type\": \"string\"},","                                \"mandate_id\": {\"type\":\"string\"},","                                \"processor_entity_name\": {\"type\":\"string\"},","                                \"processor_details\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"auth_code\": {\"type\":\"string\"},","                                        \"processor_id\": {\"type\":\"string\"},","                                        \"processor_reference\": {\"type\":\"string\"},","                                        \"result\": {","                                            \"type\":\"object\",","                                            \"additionalProperties\": false,","                                            \"properties\": {","                                                \"decline_code\": {\"type\":\"string\"},","                                                \"decline_reason\": {\"type\":\"string\"},","                                                \"last_action\": {\"type\":\"string\"},","                                                \"result_code\": {\"type\":\"string\"},","                                                \"status\": {\"type\":\"string\"}","                                            },","                                            \"required\": []","                                        },","                                        \"scheme\": {\"type\":\"string\"}","                                    },","                                    \"required\": [","                                        \"processor_id\"","                                    ]","                                },","                                \"recurring_payment_mode\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"FIXED_SCHEDULE\", \"NON_RECURRING\", \"VARIABLE_RECURRING\"]","                                },                       ","                                \"references\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"bank_transaction_reference\": {\"type\":\"string\"},","                                        \"dda_reference\": {\"type\":\"string\"},","                                        \"finverse_transaction_reference\": {\"type\":\"string\"}","                                    },","                                    \"required\": []","                                },","                                \"transaction_reference_id\": {\"type\": \"string\"} // TO BE DEPRECATED","                                },","                            \"required\": [","                                \"description\",","                                \"external_transaction_reference\"","                            ]","                        },","                        \"payment_id\": {\"type\":\"string\"},","                        \"payment_method\": { // SIMPLIED PAYMENT METHOD OBJECT -- TO BE EXPANDED LATER INTO FULL PAYMENT_METHOD OBJECT","                            \"type\": \"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"card\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"card_details\": {","                                            \"type\":\"object\",","                                            \"additionalProperties\": false,","                                            \"properties\": {","                                                \"brand\": {\"type\":\"string\"},","                                                \"funding\": {","                                                    \"type\":\"string\",","                                                    \"enum\": [\"CREDIT\", \"DEBIT\", \"PREPAID\", \"UNKNOWN\"]","                                                },","                                                \"last4\": {\"type\":\"string\"}","                                            },","                                            \"required\": []","                                        },","                                    },","                                },","                            },","                            \"required\": [ ]","                        },","                        \"payment_method_id\":  {\"type\":\"string\"}, // TBD: MAY BE DEPRECATED LATER ONCE INCLUDED IN FULL PAYMENT_METHOD OBJECT","                        \"recipient\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"name\": {\"type\":\"string\"}","                            },","                            \"required\": [","                                \"name\"","                            ]","                        },","                        \"recipient_account\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"account_id\": {\"type\":\"string\"},","                                \"account_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                }","                            },","                            \"required\": [","                                \"account_id\",","                                \"account_type\"","                            ]","                        },","                        \"sender\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"external_user_id\": {\"type\":\"string\"},","                                \"name\": {\"type\":\"string\"},","                                \"user_details\": {","                                    \"type\":[\"array\",\"null\"],","                                    \"items\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"details_type\": {","                                                \"type\":\"string\",","                                                \"enum\": [\"HK_ID\", \"PASSPORT\", \"HK_BUSINESS_REGISTRATION\", \"HK_CERTIFICATE_OF_INCORPORATION\"]","                                            },","                                            \"values\": {","                                                \"type\": \"array\",","                                                \"items\": {","                                                    \"type\": \"string\"","                                                }","                                            }","                                        },","                                        \"required\": [","                                            \"details_type\",","                                            \"values\"","                                        ]","                                    }","                                },","                                \"user_id\": {\"type\":\"string\"},","                                \"user_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"BUSINESS\", \"INDIVIDUAL\", \"UNKNOWN\"]","                                }","                            },","                            \"required\": [","                                \"external_user_id\",","                                //\"name\", // TO BE ENFORCED","                                \"user_id\",","                                \"user_type\"","                            ]","                        },","                        \"sender_account\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"account_id\": {\"type\":\"string\"},","                                \"account_number\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"number\": {\"type\":\"string\"},","                                        \"type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"IBAN\", \"LOCAL\"]","                                        }","                                    },","                                    \"required\": [","                                        \"number\",","                                        \"type\"","                                    ]","                                },","                                \"account_number_masked\": {\"type\":\"string\"},","                                \"account_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                },","                                \"accountholder_name\": {\"type\":\"string\"},","                                \"bank_code\": {\"type\":\"string\"},","                                \"institution_id\": {\"type\":\"string\"},","                                \"institution_name\": {\"type\":\"string\"},","                                \"user_id\": {\"type\":\"string\"},","                            },","                            \"required\": [","                                \"account_type\",","                                \"user_id\"","                            ]","                        },","                        \"status\": {","                            \"type\":\"string\",","                            \"enum\": [\"CREATED\", \"AUTHORIZATION_REQUIRED\", \"PROCESSING\", \"SUBMITTED\", \"EXECUTED\", \"CANCELLED\", \"FAILED\"]","                        },","                        \"surcharge_amount\": {\"type\":\"integer\"},","                        \"type\": {","                            \"type\":\"string\",","                            \"enum\": [\"CARD\", \"MANDATE\", \"MANUAL\", \"SINGLE\"]","                        },","                        \"updated_at\": {\"type\":\"string\"}","                    },","                    \"required\" : [","                        \"amount\",","                        \"amount_total_with_surcharge\",","                        \"created_at\",","                        \"currency\",","                        \"fees\",","                        \"payment_details\",","                        \"payment_id\",","                        //\"payment_method\", // TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT METHOD","                        //\"payment_method_id\", // TBC: TO BE ENFORCED LATER ONCE ALL MANUAL + CARD PAYMENTS HAVE A PAYMENT_METHOD_ID","                        \"recipient\",","                        \"recipient_account\",","                        \"sender\",","                        \"status\",","                        \"surcharge_amount\",","                        \"type\",","                        \"updated_at\"","                    ]","                }","            },","            \"total_payments\": {\"type\":\"number\"}","        },","        \"required\" : [","            \"payments\",","            \"total_payments\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","// ADDITIONAL TESTS - START","pm.test(\"At least 1 payment found\", function() {","    pm.expect(jsonData.payments.length).to.be.at.least(1)","    });","// ADDITIONAL TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"fc7c0e0d-81c6-4d0e-a3fa-bc61dfdbbed2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"url":"https://api.prod.finverse.net/payments?offset=0&limit=100&date_from=2026-01-01&date_to=2026-12-01","description":"<p>List Payments associated with a Customer App.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"url-query-parameters\">URL Query parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>currencies</td>\n<td>array of strings, optional</td>\n<td>Comma-separated filter for a specific of currencies</td>\n</tr>\n<tr>\n<td>date_from</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>Start date for filtering (applied to Payment <code>updated_at</code> field)</td>\n</tr>\n<tr>\n<td>date_to</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>End date for filtering (applied to Payment <code>updated_at</code> field)</td>\n</tr>\n<tr>\n<td>institution_id</td>\n<td>string, optional</td>\n<td>Filter for a specific Institution ID</td>\n</tr>\n<tr>\n<td>mandate_id</td>\n<td>string, optional</td>\n<td>Filter for Payments under a specific Mandate</td>\n</tr>\n<tr>\n<td>payment_types</td>\n<td>array of strings, optional</td>\n<td>Comma-separated filter for specific Payment types. Refer to payment_type in <code>GET /payments/{payment_id}</code></td>\n</tr>\n<tr>\n<td>sender_type</td>\n<td>string, optional</td>\n<td>Filter for a specific sender type. Refer to Payment sender_type in <code>GET /payments/{payment_id}</code></td>\n</tr>\n<tr>\n<td>statuses</td>\n<td>array of strings</td>\n<td>Comma-separated filter for specific Payment statuses. Example: <code>statuses=SUCCEEDED FAILED</code>.  <br />  <br />Refer to Payment statuses in <code>GET /payments/{payment_id}</code></td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>string (ULID)</td>\n<td><strong>[Coming soon]</strong> Finverse unique ID for the user.</td>\n</tr>\n<tr>\n<td>limit</td>\n<td>integer, optional</td>\n<td>Maximum number of records per page (default: 500, max: 1000)</td>\n</tr>\n<tr>\n<td>offset</td>\n<td>integer, optional</td>\n<td>Pagination offset (default: 0)</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-fields\">Response fields</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>payments</td>\n<td>array of Payment objects</td>\n<td>List of Payment objects that satisfy the filters in the request. Refer to Payment object data model in <code>GET /payments/{payment_id}</code></td>\n</tr>\n<tr>\n<td>total_payments</td>\n<td>integer</td>\n<td>Total number of Payment records available for the selected filtering criteria (can be used to inform pagination requests)</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["payments"],"host":["https://api.prod.finverse.net"],"query":[{"disabled":true,"key":"currencies","value":"HKD"},{"key":"offset","value":"0"},{"disabled":true,"key":"institution_id","value":"hsbc-hk"},{"disabled":true,"key":"mandate_id","value":""},{"key":"limit","value":"100"},{"disabled":true,"key":"statuses","value":"CREATED,SUBMITTED,EXECUTED"},{"disabled":true,"key":"payment_types","value":"CARD,MANDATE,MANUAL"},{"key":"date_from","value":"2026-01-01"},{"key":"date_to","value":"2026-12-01"}],"variable":[]}},"response":[{"id":"f6305c28-3d73-48ea-8019-133a9f830ca7","name":"Success (Card payments)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":{"raw":"https://api.prod.finverse.net/payments?offset=0&date_to=2025-12-01&limit=1000&statuses=EXECUTED&date_from=2025-01-01&payment_types=CARD&currencies=HKD","host":["https://api.prod.finverse.net"],"path":["payments"],"query":[{"key":"offset","value":"0"},{"key":"institution_id","value":"hsbc-hk","disabled":true},{"key":"mandate_id","value":"","disabled":true},{"key":"date_to","value":"2025-12-01"},{"key":"limit","value":"1000"},{"key":"statuses","value":"EXECUTED"},{"key":"date_from","value":"2025-01-01"},{"key":"payment_types","value":"CARD"},{"key":"currencies","value":"HKD"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1740475573"},{"key":"Date","value":"Tue, 25 Feb 2025 09:26:13 GMT"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"},{"key":"Transfer-Encoding","value":"chunked"}],"cookie":[],"responseTime":null,"body":"{\n    \"payments\": [\n        {\n            \"amount\": 500,\n            \"amount_total_with_surcharge\": 752,\n            \"created_at\": \"2025-06-21T06:11:19.848Z\",\n            \"currency\": \"HKD\",\n            \"fees\": [\n                {\n                    \"amount\": 252,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"SENDER\",\n                    \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n                },\n                {\n                    \"amount\": 261,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n                }\n            ],\n            \"metadata\": {\n                \"branch\": \"branch1\",\n                \"key\": \"value\",\n                \"stripe_charge_id\": \"ch_3RcKe4JXxo5qMAzS1Ue37Jxk\",\n                \"stripe_payment_intent_id\": \"pi_3RcKe4JXxo5qMAzS1nVrP2kt\"\n            },\n            \"payment_details\": {\n                \"collection_entity_name\": \"Finverse Test\",\n                \"description\": \"Test payment\",\n                \"external_transaction_reference\": \"1750486279\",\n                \"references\": {\n                    \"finverse_transaction_reference\": \"FV250101GGBB\"\n                }\n            },\n            \"payment_id\": \"01JY8HSSGS0GA6VJXYWQ32RYNR\",\n            \"payment_method\": {\n                \"card\": {\n                    \"card_details\": {\n                        \"brand\": \"Visa\",\n                        \"funding\": \"UNKNOWN\",\n                        \"last4\": \"4242\"\n                    }\n                }\n            },\n            \"payment_method_id\": \"01JY8H414WA2G39Y18G6E62DFY\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750485561\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8H3WCKB99VSEVZ2P3ZRG35\",\n                \"user_type\": \"UNKNOWN\"\n            },\n            \"status\": \"EXECUTED\",\n            \"surcharge_amount\": 252,\n            \"type\": \"CARD\",\n            \"updated_at\": \"2025-06-21T06:11:21.603Z\"\n        },\n        {\n            \"amount\": 10000,\n            \"amount_total_with_surcharge\": 10575,\n            \"created_at\": \"2025-06-21T05:54:42.800Z\",\n            \"currency\": \"HKD\",\n            \"fees\": [\n                {\n                    \"amount\": 575,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"SENDER\",\n                    \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n                },\n                {\n                    \"amount\": 595,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n                }\n            ],\n            \"metadata\": {\n                \"contract_id\": \"1234\",\n                \"key\": \"value\",\n                \"storeganise_invoice_ids\": \"ABCD\",\n                \"stripe_charge_id\": \"ch_3RcKOIJXxo5qMAzS1O7zX6Jn\",\n                \"stripe_payment_intent_id\": \"pi_3RcKOIJXxo5qMAzS1hKaqKIj\",\n                \"user_address\": \"1 Admiralty Drive\",\n                \"user_city\": \"Hong Kong\",\n                \"user_country\": \"HK\",\n                \"user_first_name\": \"John\",\n                \"user_last_name\": \"Doe\"\n            },\n            \"payment_details\": {\n                \"collection_entity_name\": \"Finverse Test\",\n                \"description\": \"TEST Payment\",\n                \"external_transaction_reference\": \"INV12345\",\n                \"references\": {\n                    \"finverse_transaction_reference\": \"FV250101FFBB\"\n                }\n            },\n            \"payment_id\": \"01JY8GVBWG929X02BEDBGPJGPS\",\n            \"payment_method\": {\n                \"card\": {\n                    \"card_details\": {\n                        \"brand\": \"Visa\",\n                        \"last4\": \"4242\"\n                    }\n                }\n            },\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750485272\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8GV2MA6X5QRMY2Q8HABFQJ\",\n                \"user_type\": \"UNKNOWN\"\n            },\n            \"status\": \"EXECUTED\",\n            \"surcharge_amount\": 575,\n            \"type\": \"CARD\",\n            \"updated_at\": \"2025-06-21T05:55:05.215Z\"\n        },\n        {\n            \"amount\": 10000,\n            \"amount_total_with_surcharge\": 10575,\n            \"created_at\": \"2025-06-21T05:39:28.452Z\",\n            \"currency\": \"HKD\",\n            \"fees\": [\n                {\n                    \"amount\": 575,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"SENDER\",\n                    \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n                },\n                {\n                    \"amount\": 595,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n                }\n            ],\n            \"metadata\": {\n                \"contract_id\": \"1234\",\n                \"key\": \"value\",\n                \"storeganise_invoice_ids\": \"ABCD\",\n                \"stripe_charge_id\": \"ch_3RcK9dJXxo5qMAzS0mk3bRL9\",\n                \"stripe_payment_intent_id\": \"pi_3RcK9dJXxo5qMAzS0WsG04wW\",\n                \"user_address\": \"1 Admiralty Drive\",\n                \"user_city\": \"Hong Kong\",\n                \"user_country\": \"HK\",\n                \"user_first_name\": \"John\",\n                \"user_last_name\": \"Doe\"\n            },\n            \"payment_details\": {\n                \"collection_entity_name\": \"Finverse Test\",\n                \"description\": \"TEST Payment\",\n                \"external_transaction_reference\": \"INV12345\",\n                \"references\": {\n                    \"finverse_transaction_reference\": \"FV250621EEBB\"\n                }\n            },\n            \"payment_id\": \"01JY8FZEZXR3RG0Z8XZQ5CCZB3\",\n            \"payment_method\": {\n                \"card\": {\n                    \"card_details\": {\n                        \"brand\": \"Visa\",\n                        \"last4\": \"4242\"\n                    }\n                }\n            },\n            \"payment_method_id\": \"01JY8FZF0TTC86M1WWGH3G98SG\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750484358\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8FZ5XEAQFW3GZZRYK72M1G\",\n                \"user_type\": \"UNKNOWN\"\n            },\n            \"status\": \"EXECUTED\",\n            \"surcharge_amount\": 575,\n            \"type\": \"CARD\",\n            \"updated_at\": \"2025-06-21T05:39:57.257Z\"\n        },\n        {\n            \"amount\": 500,\n            \"amount_total_with_surcharge\": 752,\n            \"created_at\": \"2025-06-21T05:26:27.104Z\",\n            \"currency\": \"HKD\",\n            \"fees\": [\n                {\n                    \"amount\": 252,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"SENDER\",\n                    \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n                },\n                {\n                    \"amount\": 261,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n                }\n            ],\n            \"metadata\": {\n                \"branch\": \"branch1\",\n                \"key\": \"updated_value\",\n                \"new_key\": \"new_value\",\n                \"stripe_charge_id\": \"ch_3RcJwdJXxo5qMAzS1mMWGQUe\",\n                \"stripe_payment_intent_id\": \"pi_3RcJwdJXxo5qMAzS1ktHHSbS\"\n            },\n            \"payment_details\": {\n                \"collection_entity_name\": \"Finverse Test\",\n                \"description\": \"Test payment\",\n                \"external_transaction_reference\": \"1750483586\",\n                \"references\": {\n                    \"finverse_transaction_reference\": \"FV250621DDBB\"\n                }\n            },\n            \"payment_id\": \"01JY8F7KVAW66HAVWTNRGF6RSV\",\n            \"payment_method\": {\n                \"card\": {\n                    \"card_details\": {\n                        \"brand\": \"Visa\",\n                        \"funding\": \"UNKNOWN\",\n                        \"last4\": \"4242\"\n                    }\n                }\n            },\n            \"payment_method_id\": \"01JY8DW4DAQY5STF25AE22W5C7\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750482147\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8DVPA28N4TB11N9H57J5CX\",\n                \"user_type\": \"UNKNOWN\"\n            },\n            \"status\": \"EXECUTED\",\n            \"surcharge_amount\": 252,\n            \"type\": \"CARD\",\n            \"updated_at\": \"2025-06-21T05:27:12.719Z\"\n        },\n        {\n            \"amount\": 500,\n            \"amount_total_with_surcharge\": 752,\n            \"created_at\": \"2025-06-21T05:24:50.021Z\",\n            \"currency\": \"HKD\",\n            \"fees\": [\n                {\n                    \"amount\": 252,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"SENDER\",\n                    \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n                },\n                {\n                    \"amount\": 261,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n                }\n            ],\n            \"metadata\": {\n                \"branch\": \"branch1\",\n                \"key\": \"value\",\n                \"stripe_charge_id\": \"ch_3RcJv4JXxo5qMAzS1lyWmNJY\",\n                \"stripe_payment_intent_id\": \"pi_3RcJv4JXxo5qMAzS189b3VkG\"\n            },\n            \"payment_details\": {\n                \"collection_entity_name\": \"Finverse Test\",\n                \"description\": \"Test payment\",\n                \"external_transaction_reference\": \"1750483489\",\n                \"references\": {\n                    \"finverse_transaction_reference\": \"FV250621BBCC\"\n                }\n            },\n            \"payment_id\": \"01JY8F4N0WSJMW9P2T73XDF0NX\",\n            \"payment_method\": {\n                \"card\": {\n                    \"card_details\": {\n                        \"brand\": \"Visa\",\n                        \"funding\": \"UNKNOWN\",\n                        \"last4\": \"4242\"\n                    }\n                }\n            },\n            \"payment_method_id\": \"01JY8DW4DAQY5STF25AE22W5C7\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750482147\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8DVPA28N4TB11N9H57J5CX\",\n                \"user_type\": \"UNKNOWN\"\n            },\n            \"status\": \"EXECUTED\",\n            \"surcharge_amount\": 252,\n            \"type\": \"CARD\",\n            \"updated_at\": \"2025-06-21T05:24:52.179Z\"\n        },\n        {\n            \"amount\": 10000,\n            \"amount_total_with_surcharge\": 10575,\n            \"created_at\": \"2025-06-21T05:02:42.165Z\",\n            \"currency\": \"HKD\",\n            \"fees\": [\n                {\n                    \"amount\": 575,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"SENDER\",\n                    \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n                },\n                {\n                    \"amount\": 595,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\"\n                }\n            ],\n            \"metadata\": {\n                \"contract_id\": \"1234\",\n                \"key\": \"value\",\n                \"storeganise_invoice_ids\": \"ABCD\",\n                \"stripe_charge_id\": \"ch_3RcJa1JXxo5qMAzS1JQLl4Nl\",\n                \"stripe_payment_intent_id\": \"pi_3RcJa1JXxo5qMAzS1T13AcoE\",\n                \"user_address\": \"1 Admiralty Drive\",\n                \"user_city\": \"Hong Kong\",\n                \"user_country\": \"HK\",\n                \"user_first_name\": \"John\",\n                \"user_last_name\": \"Doe\"\n            },\n            \"payment_details\": {\n                \"collection_entity_name\": \"Finverse Test\",\n                \"description\": \"TEST Payment\",\n                \"external_transaction_reference\": \"INV12345\",\n                \"references\": {\n                    \"finverse_transaction_reference\": \"FV250621AABB\"\n                }\n            },\n            \"payment_id\": \"01JY8DW4CGB3Z0WTBHZFSZTJZ4\",\n            \"payment_method\": {\n                \"card\": {\n                    \"card_details\": {\n                        \"brand\": \"Visa\",\n                        \"last4\": \"4242\"\n                    }\n                }\n            },\n            \"payment_method_id\": \"01JY8DW4DAQY5STF25AE22W5C7\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPF2CBDBQ6F66N78NA47\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750482147\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8DVPA28N4TB11N9H57J5CX\",\n                \"user_type\": \"UNKNOWN\"\n            },\n            \"status\": \"EXECUTED\",\n            \"surcharge_amount\": 575,\n            \"type\": \"CARD\",\n            \"updated_at\": \"2025-06-21T05:03:09.340Z\"\n        }\n    ],\n    \"total_payments\": 6\n}"},{"id":"3e32b58e-3b37-4cf4-9846-2a13a8ba0f76","name":"Success (Mandate payments)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":{"raw":"https://api.prod.finverse.net/payments?offset=0&date_to=2025-12-01&limit=1000&payment_types=MANDATE&statuses=EXECUTED&currencies=HKD&date_from=2025-01-01","host":["https://api.prod.finverse.net"],"path":["payments"],"query":[{"key":"offset","value":"0"},{"key":"institution_id","value":"hsbc-hk","disabled":true},{"key":"mandate_id","value":"","disabled":true},{"key":"date_to","value":"2025-12-01"},{"key":"limit","value":"1000"},{"key":"payment_types","value":"MANDATE"},{"key":"statuses","value":"EXECUTED"},{"key":"currencies","value":"HKD"},{"key":"date_from","value":"2025-01-01"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1740475467"},{"key":"Date","value":"Tue, 25 Feb 2025 09:24:28 GMT"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"},{"key":"Transfer-Encoding","value":"chunked"}],"cookie":[],"responseTime":null,"body":"{\n    \"payments\": [\n        {\n            \"amount\": 500,\n            \"amount_total_with_surcharge\": 500,\n            \"created_at\": \"2025-06-21T06:30:26.839Z\",\n            \"currency\": \"HKD\",\n            \"fees\": [\n                {\n                    \"amount\": 500,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"metadata\": {\n                \"branch\": \"branch1\",\n                \"key\": \"updated_value\",\n                \"new_key\": \"new_value\"\n            },\n            \"payment_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"description\": \"Test payment\",\n                \"external_transaction_reference\": \"1750487427\",\n                \"mandate_id\": \"01JY8JWDY51SYHP006XZBAMVGN\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"references\": {\n                    \"bank_transaction_reference\": \"DBS_BANK_REF_01JY8JWTJ92E3RX2TF5F1RA2KK\",\n                    \"dda_reference\": \"FINVERSE T-62F2-FINV\",\n                    \"finverse_transaction_reference\": \"FV250621JJBB\"\n                },\n                \"transaction_reference_id\": \"1750487427\"\n            },\n            \"payment_id\": \"01JY8JWSHVR9SNZWYFYX2C9CTV\",\n            \"payment_method_id\": \"01JY8JWE50618D9RGH44AR884F\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1_1750487415\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8JWE3NG8CJ7DVJZJC3HMJT\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8JWKX2HSZJ500DNEJ3JGHQ\",\n                \"account_number\": {\n                    \"number\": \"01JY8JWM06NV1VNCPM6D5JJ9Y9\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"XXX45\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8JWKZRZ32FFE4G0FPM19H1\",\n                \"bank_code\": \"420\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8JWE3NG8CJ7DVJZJC3HMJT\"\n            },\n            \"status\": \"EXECUTED\",\n            \"surcharge_amount\": 0,\n            \"type\": \"MANDATE\",\n            \"updated_at\": \"2025-06-21T06:30:28.482Z\"\n        },\n        {\n            \"amount\": 10000,\n            \"amount_total_with_surcharge\": 10000,\n            \"created_at\": \"2025-06-21T05:35:28.612Z\",\n            \"currency\": \"HKD\",\n            \"fees\": [\n                {\n                    \"amount\": 500,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"metadata\": {\n                \"contract_id\": \"1234\",\n                \"key\": \"value\",\n                \"storeganise_invoice_ids\": \"ABCD\",\n                \"user_address\": \"1 Admiralty Drive\",\n                \"user_city\": \"Hong Kong\",\n                \"user_country\": \"HK\",\n                \"user_first_name\": \"John\",\n                \"user_last_name\": \"Doe\"\n            },\n            \"payment_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"description\": \"TEST Payment\",\n                \"external_transaction_reference\": \"INV12345\",\n                \"mandate_id\": \"01JY8FQHTEX7FAJMM4SGK4GRSZ\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"references\": {\n                    \"bank_transaction_reference\": \"DBS_BANK_REF_01JY8FR55T92FBYARB2SDH1EPH\",\n                    \"dda_reference\": \"FINVERSE T-8F52-FINV\",\n                    \"finverse_transaction_reference\": \"FV250621IIBB\"\n                },\n                \"transaction_reference_id\": \"INV12345\"\n            },\n            \"payment_id\": \"01JY8FR4M8JN3RYWJNNK7AE3HK\",\n            \"payment_method_id\": \"01JY8FQHXCZXWYN2EG383YAGR2\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750484076\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8FPJ0XFTEBPH5VHF379XF3\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8FQWS1D4ZX8PJJS9ZY6B58\",\n                \"account_number\": {\n                    \"number\": \"01JY8FQWYTG44WF6RECHN6M09F\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"300XXXX03\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8FQWXZN9CFXFKPPKEHTE2M\",\n                \"bank_code\": \"420\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8FPJ0XFTEBPH5VHF379XF3\"\n            },\n            \"status\": \"EXECUTED\",\n            \"surcharge_amount\": 0,\n            \"type\": \"MANDATE\",\n            \"updated_at\": \"2025-06-21T05:35:29.664Z\"\n        },\n        {\n            \"amount\": 500,\n            \"amount_total_with_surcharge\": 500,\n            \"created_at\": \"2025-06-21T04:31:28.952Z\",\n            \"currency\": \"HKD\",\n            \"fees\": [\n                {\n                    \"amount\": 500,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"metadata\": {\n                \"branch\": \"branch1\",\n                \"key\": \"updated_value\",\n                \"new_key\": \"new_value\"\n            },\n            \"payment_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"description\": \"Test payment\",\n                \"external_transaction_reference\": \"1750480288\",\n                \"mandate_id\": \"01JY8C0V23FPKZXH1YAHC9JBD5\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"references\": {\n                    \"bank_transaction_reference\": \"DBS_BANK_REF_01JY8C2ZE4NK0NGAQMCETTSPMM\",\n                    \"dda_reference\": \"FINVERSE T-2X6K-FINV\",\n                    \"finverse_transaction_reference\": \"FV250621KKBB\"\n                },\n                \"transaction_reference_id\": \"1750480288\"\n            },\n            \"payment_id\": \"01JY8C2YY2AE7NGZHNFPFP99NR\",\n            \"payment_method_id\": \"01JY8C0V652P775DQG7DXH9HNR\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1_1750480219\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8C0V4VMZRC8YM399JF84BP\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8C2MR456G4EXKVZHB45WPR\",\n                \"account_number\": {\n                    \"number\": \"01JY8C2MWT0M5NXR1V7FW8ZJEG\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"XXX45\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8C2MW9WT09SK3AA0928518\",\n                \"bank_code\": \"420\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8C0V4VMZRC8YM399JF84BP\"\n            },\n            \"status\": \"EXECUTED\",\n            \"surcharge_amount\": 0,\n            \"type\": \"MANDATE\",\n            \"updated_at\": \"2025-06-21T04:31:39.777Z\"\n        },\n        {\n            \"amount\": 10000,\n            \"amount_total_with_surcharge\": 10000,\n            \"created_at\": \"2025-06-21T04:20:41.367Z\",\n            \"currency\": \"HKD\",\n            \"fees\": [\n                {\n                    \"amount\": 500,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"metadata\": {\n                \"contract_id\": \"1234\",\n                \"key\": \"value\",\n                \"storeganise_invoice_ids\": \"ABCD\",\n                \"user_address\": \"1 Admiralty Drive\",\n                \"user_city\": \"Hong Kong\",\n                \"user_country\": \"HK\",\n                \"user_first_name\": \"John\",\n                \"user_last_name\": \"Doe\"\n            },\n            \"payment_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"description\": \"TEST Payment\",\n                \"external_transaction_reference\": \"INV12345\",\n                \"mandate_id\": \"01JY8BEMF3AGBQ7C9CJWTV2W4X\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"references\": {\n                    \"bank_transaction_reference\": \"DBS_BANK_REF_01JY8BF7M1ZTGQ8NXZ1F1VJYVH\",\n                    \"dda_reference\": \"FINVERSE T-8M2Z-FINV\",\n                    \"finverse_transaction_reference\": \"FV250621LLBB\"\n                },\n                \"transaction_reference_id\": \"INV12345\"\n            },\n            \"payment_id\": \"01JY8BF6JMXS7WS48YM2995GK4\",\n            \"payment_method_id\": \"01JY8BEMJZQQWGFTCKNSJGB0BD\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750479613\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8BECD0ARSWMA0YX0DRY57A\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8BF0GD7H9WWSD892FP5FJT\",\n                \"account_number\": {\n                    \"number\": \"01JY8BF0Q7VGR0H60M00ZG4HXZ\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"030XXXXX4004\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8BF0MPCWYC25B4AFJNGGSQ\",\n                \"bank_code\": \"420\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8BECD0ARSWMA0YX0DRY57A\"\n            },\n            \"status\": \"EXECUTED\",\n            \"surcharge_amount\": 0,\n            \"type\": \"MANDATE\",\n            \"updated_at\": \"2025-06-21T04:20:42.953Z\"\n        },\n        {\n            \"amount\": 10000,\n            \"amount_total_with_surcharge\": 10000,\n            \"created_at\": \"2025-06-21T04:15:12.624Z\",\n            \"currency\": \"HKD\",\n            \"fees\": [\n                {\n                    \"amount\": 500,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\"\n                }\n            ],\n            \"metadata\": {\n                \"contract_id\": \"1234\",\n                \"key\": \"value\",\n                \"storeganise_invoice_ids\": \"ABCD\",\n                \"user_address\": \"1 Admiralty Drive\",\n                \"user_city\": \"Hong Kong\",\n                \"user_country\": \"HK\",\n                \"user_first_name\": \"John\",\n                \"user_last_name\": \"Doe\"\n            },\n            \"payment_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"description\": \"TEST Payment\",\n                \"external_transaction_reference\": \"INV12345\",\n                \"mandate_id\": \"01JY8B4MK6T0KFYPV028FRW1YS\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"references\": {\n                    \"bank_transaction_reference\": \"DBS_BANK_REF_01JY8B560ATZXDTYP9YRC5VTYE\",\n                    \"dda_reference\": \"FINVERSE T-0KMR-FINV\",\n                    \"finverse_transaction_reference\": \"FV250621MMBB\"\n                },\n                \"transaction_reference_id\": \"INV12345\"\n            },\n            \"payment_id\": \"01JY8B55H1TYX6XDF89Z40D0W6\",\n            \"payment_method_id\": \"01JY8B4MPYMWNJ7XT603HV2SZ8\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPBC32AZ5TPD99R27JZP\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750479256\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8B3FK244XNJCZV2J2PBRMN\",\n                \"user_type\": \"INDIVIDUAL\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01JY8B4XY0N1AVRR88WWHC7NK2\",\n                \"account_number\": {\n                    \"number\": \"01JY8B4Y2W8GJGVV1G6ZZNAPE9\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"404XXXXX4040\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01JY8B4Y1HQFKHXKG2RGA0CZZ3\",\n                \"bank_code\": \"420\",\n                \"institution_id\": \"testbank-dbs-hk\",\n                \"institution_name\": \"Testbank (HK) Payments - Personal\",\n                \"user_id\": \"01JY8B3FK244XNJCZV2J2PBRMN\"\n            },\n            \"status\": \"EXECUTED\",\n            \"surcharge_amount\": 0,\n            \"type\": \"MANDATE\",\n            \"updated_at\": \"2025-06-21T04:15:14.224Z\"\n        }\n    ],\n    \"total_payments\": 5\n}"},{"id":"7f5bdc3d-4e92-4309-ac2f-66370ef13a80","name":"Success (Manual bank payments)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":{"raw":"https://api.prod.finverse.net/payments?date_to=2025-12-01&currencies=HKD&offset=0&limit=10&statuses=CREATED,SUBMITTED,EXECUTED&date_from=2025-06-01&payment_types=MANUAL","host":["https://api.prod.finverse.net"],"path":["payments"],"query":[{"key":"date_to","value":"2025-12-01"},{"key":"currencies","value":"HKD"},{"key":"offset","value":"0"},{"key":"institution_id","value":"hsbc-hk","disabled":true},{"key":"mandate_id","value":"","disabled":true},{"key":"limit","value":"10"},{"key":"statuses","value":"CREATED,SUBMITTED,EXECUTED"},{"key":"date_from","value":"2025-06-01"},{"key":"payment_types","value":"MANUAL"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1750499420"},{"key":"Date","value":"Sat, 21 Jun 2025 09:50:20 GMT"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"},{"key":"Transfer-Encoding","value":"chunked"}],"cookie":[],"responseTime":null,"body":"{\n    \"payments\": [\n        {\n            \"amount\": 10000,\n            \"amount_total_with_surcharge\": 10000,\n            \"created_at\": \"2025-06-21T05:33:41.957Z\",\n            \"currency\": \"HKD\",\n            \"fees\": [\n                {\n                    \"amount\": 50,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPD7J0GDJGX99VWJSMXN\"\n                }\n            ],\n            \"metadata\": {\n                \"contract_id\": \"1234\",\n                \"key\": \"value\",\n                \"storeganise_invoice_ids\": \"ABCD\",\n                \"user_address\": \"1 Admiralty Drive\",\n                \"user_city\": \"Hong Kong\",\n                \"user_country\": \"HK\",\n                \"user_first_name\": \"John\",\n                \"user_last_name\": \"Doe\"\n            },\n            \"payment_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"description\": \"TEST Payment\",\n                \"external_transaction_reference\": \"INV12345\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"references\": {\n                    \"finverse_transaction_reference\": \"FV250621OOCC\"\n                }\n            },\n            \"payment_id\": \"01JY8FMWGS1NV7T9QGFBA84A52\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPD7J0GDJGX99VWJSMXN\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750484015\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8FMP77D0S5KSB7CXSA4MTJ\",\n                \"user_type\": \"UNKNOWN\"\n            },\n            \"status\": \"SUBMITTED\",\n            \"surcharge_amount\": 0,\n            \"type\": \"MANUAL\",\n            \"updated_at\": \"2025-06-21T05:33:44.767Z\"\n        },\n        {\n            \"amount\": 10000,\n            \"amount_total_with_surcharge\": 10000,\n            \"created_at\": \"2025-06-21T05:33:16.934Z\",\n            \"currency\": \"HKD\",\n            \"fees\": [\n                {\n                    \"amount\": 50,\n                    \"currency\": \"HKD\",\n                    \"paid_by\": \"RECIPIENT\",\n                    \"paid_by_account_id\": \"01JY8AKPD7J0GDJGX99VWJSMXN\"\n                }\n            ],\n            \"metadata\": {\n                \"contract_id\": \"1234\",\n                \"key\": \"value\",\n                \"storeganise_invoice_ids\": \"ABCD\",\n                \"user_address\": \"1 Admiralty Drive\",\n                \"user_city\": \"Hong Kong\",\n                \"user_country\": \"HK\",\n                \"user_first_name\": \"John\",\n                \"user_last_name\": \"Doe\"\n            },\n            \"payment_details\": {\n                \"collection_entity_name\": \"Finverse Technologies Limited\",\n                \"description\": \"TEST Payment\",\n                \"external_transaction_reference\": \"INV12345\",\n                \"processor_entity_name\": \"Finverse Technologies Limited\",\n                \"references\": {\n                    \"finverse_transaction_reference\": \"FV250621NNCC\"\n                }\n            },\n            \"payment_id\": \"01JY8FM45XCZCC7F258DA2532H\",\n            \"recipient\": {\n                \"name\": \"Finverse Test\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01JY8AKPD7J0GDJGX99VWJSMXN\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"sender\": {\n                \"external_user_id\": \"user_id_1||1750483990\",\n                \"name\": \"John Doe\",\n                \"user_details\": [],\n                \"user_id\": \"01JY8FKYV1ZJJXC6JHM7FKRCSG\",\n                \"user_type\": \"UNKNOWN\"\n            },\n            \"status\": \"CREATED\",\n            \"surcharge_amount\": 0,\n            \"type\": \"MANUAL\",\n            \"updated_at\": \"2025-06-21T05:33:16.934Z\"\n        }\n    ],\n    \"total_payments\": 2\n}"}],"_postman_id":"fc7c0e0d-81c6-4d0e-a3fa-bc61dfdbbed2"},{"name":"/payouts (List Payouts)","event":[{"listen":"test","script":{"id":"d889e4fc-ccdb-42c4-995f-c04a156b27c2","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.total_payouts) {","    console.log(\"Total number of payouts:\", jsonData.total_payouts);","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payouts or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"payouts\",","        \"error\"","    )","});","","//Payout Status is not FAILED","pm.test(\"Payout status is not FAILED\", function() {","    pm.expect(jsonData.status).to.not.equal(\"FAILED\")","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"payouts\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"amount\": {\"type\":\"integer\"},","                        \"created_at\": {\"type\":\"string\"},","                        \"currency\": {\"type\":\"string\"},","                        \"error\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"details\": {\"type\":\"string\"},","                                \"error_code\": {\"type\":\"string\"},","                                \"message\": {\"type\":\"string\"},","                                \"request_id\": {\"type\":\"string\"},","                                \"type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                                }","                            },","                            \"required\": [","                                \"code\",","                                \"message\",","                                \"request_id\",","                                \"type\"","                            ] ","                        },","                        \"fees\": {","                            \"type\":\"array\",","                            \"items\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"amount\": {\"type\":\"integer\"},","                                    \"currency\": {\"type\":\"string\"},","                                    \"paid_by\": {","                                        \"type\":\"string\",","                                        \"enum\": [\"RECIPIENT\", \"SENDER\"]","                                    },","                                    \"paid_by_account_id\": {\"type\":\"string\"}","                                },","                                \"required\": [","                                    \"amount\", ","                                    \"currency\", ","                                    \"paid_by\", ","                                    \"paid_by_account_id\"","                                ]","                            }","                        },","                        \"live\": {\"type\":\"boolean\"},","                        \"metadata\": {\"type\":\"object\"},","                        \"payment_details\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"description\": {\"type\":\"string\"},","                                \"estimated_arrival_time\": {\"type\":\"string\"},","                                \"mandate_id\": {\"type\":\"string\"},","                                \"processor_details\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"processor_id\": {\"type\":\"string\"},","                                        \"processor_reference\": {\"type\":\"string\"}","                                    },","                                    \"required\": [","                                        \"processor_id\"","                                    ]","                                },","                                \"references\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"recipient_reference\": {\"type\":\"string\"},","                                    },","                                    \"required\": []","                                },","                                \"scheduled_date\": {\"type\":\"string\"},","                                \"transaction_reference_id\": {\"type\":\"string\"}","                                },","                            \"required\": [","                                \"description\",","                                \"scheduled_date\",","                                \"transaction_reference_id\"","                            ]","                        },","                        \"payout_id\": {\"type\":\"string\"},","                        \"recipient\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"external_user_id\": {\"type\":\"string\"},","                                \"user_details\": {","                                    \"type\":[\"array\",\"null\"],","                                    \"items\": {","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"details_type\": {\"type\":\"string\"},","                                            \"values\": {","                                                \"type\": \"array\",","                                                \"items\": {","                                                    \"additionalProperties\": false,","                                                    \"type\": \"string\"","                                                }","                                            }","                                        },","                                        \"required\": [","                                            \"details_type\",","                                            \"values\"","                                        ]","                                    }","                                },","                                \"name\": {\"type\":\"string\"},","                                \"user_id\": {\"type\":\"string\"},","                                \"user_type\": {\"type\":\"string\"},","                            },","                            \"required\": [","                                \"external_user_id\",","                                //\"name\", TO BE ENFORCED","                                \"user_details\",","                                \"user_id\",","                                \"user_type\"","                            ]","                        },     ","                        \"recipient_account\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"account_id\": {\"type\":\"string\"},","                                \"account_number\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"number\": {\"type\":\"string\"},","                                        \"type\": {","                                            \"type\":\"string\",","                                            \"enum\": [\"IBAN\", \"LOCAL\"]","                                        }","                                    },","                                    \"required\": [","                                        \"number\",","                                        \"type\"","                                    ]","                                },","                                \"account_number_masked\": {\"type\":\"string\"},","                                \"account_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                },","                                \"accountholder_name\": {\"type\":\"string\"},","                                \"bank_code\": {\"type\":\"string\"},","                                \"institution_id\": {\"type\":\"string\"},","                                \"institution_name\": {\"type\":\"string\"},","                                \"user_id\": {\"type\":\"string\"},","                            },","                            \"required\": [","                                \"account_number\",","                                \"account_number_masked\",","                                \"account_type\",","                                \"institution_id\",","                                //\"institution_name\",","                                \"user_id\"","                            ]","                        },","                        \"sender\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"name\": {\"type\":\"string\"}   ","                            },","                            \"required\": [","                                \"name\",","                            ]","                        },","                        \"sender_account\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"account_id\": {\"type\":\"string\"},","                                \"account_type\": {","                                    \"type\":\"string\",","                                    \"enum\": [\"EXTERNAL_ACCOUNT\", \"SETTLEMENT_ACCOUNT\"]","                                }","                            },","                            \"required\": [","                                \"account_id\",","                                \"account_type\"","                            ]","                        },","                        \"status\": {","                            \"type\":\"string\",","                            \"enum\": [\"CREATED\", \"FUNDED\", \"PROCESSING\", \"SUBMITTED\", \"EXECUTED\", \"CANCELLED\", \"FAILED\"]","                        },","                        \"transaction_date\": {\"type\":\"string\"}, // DEPRECATED","                        \"transaction_time\": {\"type\":\"string\"},","                        \"type\": {","                            \"type\":\"string\",","                            \"enum\": [\"MANUAL\", \"SCHEDULED\", \"SETTLEMENT\"]","                        },","                        \"updated_at\": {\"type\":\"string\"}","                    },","                    \"required\" : [","                        \"amount\",","                        \"created_at\",","                        \"currency\",","                        \"live\",","                        \"payment_details\",","                        \"payout_id\",","                        //\"recipient\", // May not be known for some payouts (e.g. some Adyen payouts where Finverse doens't have an internal record for the payout account / transfer instrument record)","                        //\"recipient_account\",  // May not be known for some payouts (e.g. some Adyen payouts where Finverse doens't have an internal record for the payout account / transfer instrument record)","                        \"sender\",","                        \"sender_account\",","                        \"status\",","                        //\"transaction_date\",","                        \"type\",","                        \"updated_at\"","                    ]","                }","            },","            \"total_payouts\": {\"type\": \"number\"}","        },","        \"required\" : [","            \"payouts\",","            \"total_payouts\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"6aad56a7-5e4d-4e06-9429-4b8afddbdb22","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/payouts/?date_from=2023-01-01&date_to=2025-12-01&limit=10&offset=0","description":"<p>Retrieve a Payout object (using a specific <code>payout_id</code>).</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"response-fields\">Response fields</h2>\n<p>Single <code>Payout</code> object, containing information on the Payout.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>amount</td>\n<td>integer (ISO 4217 \"minor\" currency unit)</td>\n<td>Amount of the payout (in minor currency unit)</td>\n</tr>\n<tr>\n<td>created_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp when the payout was first created</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code)</td>\n<td>Currency of the payout (e.g. HKD)</td>\n</tr>\n<tr>\n<td>error</td>\n<td>Finverse standard <code>error</code> object, optional</td>\n<td>Details on why the payout failed (returned when <code>status</code> = <code>FAILED</code>).  <br />Note: this is used to detail any asynchronous e errors occuring after payout creation; any synchronous errors (e.g. API validation errors, real-time payout errors) will instead be returned directly during <code>POST /payouts</code>.</td>\n</tr>\n<tr>\n<td>fees</td>\n<td>array</td>\n<td>Details on the fee(s) to be charged. See below.</td>\n</tr>\n<tr>\n<td>live</td>\n<td>boolean</td>\n<td>Flag to indicate whether the payment is a test transaction (i.e. from/to a test bank, <code>live=false</code>) or a live transaction (i.e. from/to a real bank, <code>live=true</code>).</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, optional</td>\n<td>Customer-supplied attributes in key:value format. E.g. <code>employer_name</code>: <code>Apple Inc</code></td>\n</tr>\n<tr>\n<td>payment_details</td>\n<td>object</td>\n<td>Details on the payout. See below.</td>\n</tr>\n<tr>\n<td>payout_id</td>\n<td>string (ULID)</td>\n<td>Finverse Payout ID for this payout. Always unique. Creating a payout with different idempotency keys will result in two payouts with different IDs.</td>\n</tr>\n<tr>\n<td>recipient</td>\n<td>object, optional</td>\n<td>Details on the recipient of the payout. See below.  <br />  <br />Note: In some cases when the payout has been executed by a 3rd party payment gateway, the recipient may not be known.</td>\n</tr>\n<tr>\n<td>recipient_account</td>\n<td>object, optional</td>\n<td>Details on the account receiving the payout. See below.  <br />  <br />Note: In some cases when the payout has been executed by a 3rd party payment gateway, the recipient account may not be known.</td>\n</tr>\n<tr>\n<td>sender</td>\n<td>object</td>\n<td>Details on the sender of the payout. See below.</td>\n</tr>\n<tr>\n<td>sender_account</td>\n<td>object</td>\n<td>Details on the Sender's account at Finverse (i.e. the Customer App's settlement account at Finverse). See below.</td>\n</tr>\n<tr>\n<td>status</td>\n<td>string ENUM</td>\n<td>Current status of the payout. Possible values: <code>CREATED</code>, <code>FUNDED</code>, <code>PROCESSING</code>, <code>SUBMITTED, EXECUTED</code>, <code>CANCELLED</code>, <code>FAILED</code></td>\n</tr>\n<tr>\n<td>transaction_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>[DEPRECATED] Transaction date</td>\n</tr>\n<tr>\n<td>transaction_time</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Date/time at which the payout was confirmed as executed.  <br />  <br />The actual settlement date/time of the payout may be different. In addition, a payout may be recorded at different times on the bank accounts of the sender vs. the recipient.  <br />  <br />Note: in some cases, the transaction date will be known, but the specific transaction time may not be known. In these cases, the transaction time will be listed as <code>YYYY-MM-DDT00:00:00Z</code> (or another fixed time value).</td>\n</tr>\n<tr>\n<td>type</td>\n<td>string ENUM</td>\n<td>Specified payout type. Possible values: <code>MANUAL</code>, <code>SCHEDULED</code>, <code>SETTLEMENT</code></td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last update to the payout's record</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"fees-array\">fees (array)</h3>\n<p>Details on the fee(s) to be charged. Returns an empty array if no fees will be charged.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>amount</td>\n<td>integer (ISO 4217 \"minor\" currency unit)</td>\n<td>Amount of the fee (in minor currency unit)</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code)</td>\n<td>Currency of the fee (e.g. HKD)</td>\n</tr>\n<tr>\n<td>paid_by</td>\n<td>string ENUM</td>\n<td>Party who will be charged the fee. Possible values: <code>RECIPIENT</code>, <code>SENDER</code></td>\n</tr>\n<tr>\n<td>paid_by_account_id</td>\n<td>string (ULID)</td>\n<td>Finverse Payment Account ID of the party who will be charged the fee. This references the <code>account_id</code> of either the <code>recipient_account</code> or the <code>sender_account</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment_details-object\">payment_details (object)</h3>\n<p>Details describing the Payout.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>description</td>\n<td>string (SWIFT character set)</td>\n<td>User-facing description for the payout transaction. SWIFT character set includes the following characters: alphanumeric, space, and symbols <code>/ - ? : ( ) . , ' +</code></td>\n</tr>\n<tr>\n<td>estimated_arrival_time</td>\n<td>string (ISO 8601 timestamp: date-time), optional</td>\n<td>Estimated date/time the payout funds will land in the recipient's account (when available).</td>\n</tr>\n<tr>\n<td>mandate_id</td>\n<td>string (ULID)</td>\n<td><code>mandate_id</code> from mandates object. Indicates which direct debit mandate should be used to fund the payout.</td>\n</tr>\n<tr>\n<td>processor_details</td>\n<td>object, optional</td>\n<td>Details on the payment processor for the payout. See below.</td>\n</tr>\n<tr>\n<td>scheduled_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), conditionally required</td>\n<td>Scheduled date when the payout should be executed. Required when payout <code>type</code> = <code>SCHEDULED</code>.</td>\n</tr>\n<tr>\n<td>transaction_reference_id</td>\n<td>string (6-digit alphanumeric)</td>\n<td>User-facing transaction reference ID for the payout transaction, generated by Finverse. This value will typically be provided to banks executing the payout and may be displayed on the recipient's bank statement.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"processor_details-object\">processor_details (object)</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>processor_id</td>\n<td>string ENUM</td>\n<td>ID of the payment processor for the payout. Possible values: ADYEN</td>\n</tr>\n<tr>\n<td>processor_reference</td>\n<td>string</td>\n<td>Payment processor's internal reference for the payout</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"recipient-object-sender-object\">recipient (object), sender (object)</h3>\n<p>The recipient and sender objects include a Payment User object for each of the counterparties of a payout. Refer to the Payment User data model in <code>GET /payment_users/{payment_user_id}</code> for details on the Payment User object.</p>\n<p>Note: Some Payment User metadata fields are omitted for clarity (e.g. <code>created_at</code>, <code>metadata</code>, <code>updated_at</code>).</p>\n<h3 id=\"recipient_account-object-sender_account-object\">recipient_account (object), sender_account (object)</h3>\n<p>The recipient_account and sender_account objects include a Payment Account object for each of the counterparties of a payout. Refer to the Payment Account object data model in <code>GET /payment_users/{user_id}/payment_accounts</code> for details on the Payment Account object.</p>\n<p>Note: Some Payment Account metadata fields are omitted for clarity (e.g. <code>created_at</code>, <code>metadata</code>, <code>updated_at</code>).</p>\n","urlObject":{"path":["payouts",""],"host":["https://api.prod.finverse.net"],"query":[{"disabled":true,"key":"currencies","value":"HKD"},{"key":"date_from","value":"2023-01-01"},{"key":"date_to","value":"2025-12-01"},{"disabled":true,"key":"mandate_id","value":""},{"disabled":true,"description":{"content":"<p>Supported filter values: MANUAL, SCHEDULED, SETTLEMENT</p>\n","type":"text/plain"},"key":"payout_types","value":""},{"disabled":true,"key":"recipient_account_id","value":"01K3GB62J9F4KXRJFNAVKVKDXT"},{"disabled":true,"key":"recipient_external_user_id","value":"CUSTOMER-01H5GXS3PPH6Z5S8FE46Z0S0QK"},{"disabled":true,"key":"sender_account_id","value":"01K2Z4517P0CG4TPS1E7YJ1G8R"},{"key":"limit","value":"10"},{"key":"offset","value":"0"}],"variable":[]}},"response":[{"id":"6b9c23d3-5a5b-4b0c-bcac-e96c12cc05bd","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":{"raw":"https://api.prod.finverse.net/payouts/?date_from=2023-01-01&date_to=2025-12-01&limit=10&offset=0","host":["https://api.prod.finverse.net"],"path":["payouts",""],"query":[{"key":"currencies","value":"HKD","disabled":true},{"key":"date_from","value":"2023-01-01"},{"key":"date_to","value":"2025-12-01"},{"key":"mandate_id","value":"","type":"text","disabled":true},{"key":"payout_types","value":"","description":"Supported filter values: MANUAL, SCHEDULED, SETTLEMENT","disabled":true},{"key":"recipient_account_id","value":"01K3GB62J9F4KXRJFNAVKVKDXT","type":"text","disabled":true},{"key":"recipient_external_user_id","value":"CUSTOMER-01H5GXS3PPH6Z5S8FE46Z0S0QK","type":"text","disabled":true},{"key":"sender_account_id","value":"01K2Z4517P0CG4TPS1E7YJ1G8R","type":"text","disabled":true},{"key":"limit","value":"10"},{"key":"offset","value":"0"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1757492977"},{"key":"Date","value":"Wed, 10 Sep 2025 08:29:37 GMT"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"},{"key":"Transfer-Encoding","value":"chunked"}],"cookie":[],"responseTime":null,"body":"{\n    \"payouts\": [\n        {\n            \"amount\": 14986,\n            \"created_at\": \"2025-09-01T05:01:04.459Z\",\n            \"currency\": \"HKD\",\n            \"fees\": [],\n            \"live\": false,\n            \"metadata\": {\n                \"adyen_balance_account_id\": \"BA32CQQ223229D5N25FX22T3S\",\n                \"adyen_transaction_id\": \"EVJN42CQW225223W5N42QDKDBP4X3THKD\",\n                \"adyen_transfer_id\": \"6JH0IB6866J194ZR\",\n                \"adyen_transfer_instrument_id\": \"SE32CSP223226Q5N25HX4BVQ8\"\n            },\n            \"payment_details\": {\n                \"description\": \"Monthly clearing payout\",\n                \"estimated_arrival_time\": \"2025-09-01T19:05:00.000Z\",\n                \"processor_details\": {\n                    \"processor_id\": \"ADYEN\",\n                    \"processor_reference\": \"SWPE42CPH22337HK5N25K2M3RD4RFH\"\n                },\n                \"references\": {\n                    \"recipient_reference\": \"FinverseCardPayout\"\n                },\n                \"scheduled_date\": \"2025-09-01T05:00:21.000Z\",\n                \"transaction_reference_id\": \"FinverseCardPayout SWPE42CPH22337HK5N25K2M3RD4RFH\"\n            },\n            \"payout_id\": \"01K41TC01K3MATGN9K05B5YC2M\",\n            \"sender\": {\n                \"name\": \"Demo Company (Global)\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01K2Z4517P0CG4TPS1E7YJ1G8R\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"status\": \"EXECUTED\",\n            \"transaction_time\": \"2025-09-01T05:00:27.000Z\",\n            \"type\": \"SETTLEMENT\",\n            \"updated_at\": \"2025-09-01T05:01:04.459Z\"\n        },\n        {\n            \"amount\": 4000,\n            \"created_at\": \"2023-12-15T10:53:05.274Z\",\n            \"currency\": \"HKD\",\n            \"fees\": [],\n            \"live\": false,\n            \"payment_details\": {\n                \"description\": \"Finverse payout FV231215TEST6\",\n                \"scheduled_date\": \"0001-01-01T00:00:00.000Z\",\n                \"transaction_reference_id\": \"FV231215TEST6\"\n            },\n            \"payout_id\": \"01HHPHQFE15WTHSR2VP67412FP\",\n            \"recipient\": {\n                \"external_user_id\": \"XERO_CUSTOMER-01HH0YNP5RZQYPC20RG71H9QYH\",\n                \"name\": \"Demo Company (Global)\",\n                \"user_details\": [],\n                \"user_id\": \"01HH0YNP779S2DD3WFWKF6TEPX\",\n                \"user_type\": \"BUSINESS\"\n            },\n            \"recipient_account\": {\n                \"account_id\": \"01HH0YNP91WV8CT9F34C484ZTE\",\n                \"account_number\": {\n                    \"number\": \"01HH0YNPED8F69EFTBMWBP8T37\",\n                    \"type\": \"LOCAL\"\n                },\n                \"account_number_masked\": \"012XXXXXX7890\",\n                \"account_type\": \"EXTERNAL_ACCOUNT\",\n                \"accountholder_name\": \"01HH0YNPDA5XXWZC75G0HH4A8M\",\n                \"bank_code\": \"012\",\n                \"institution_id\": \"bochk-business\",\n                \"user_id\": \"01HH0YNP779S2DD3WFWKF6TEPX\"\n            },\n            \"sender\": {\n                \"name\": \"Demo Company (Global)\"\n            },\n            \"sender_account\": {\n                \"account_id\": \"01H5GXS3S6SGY7N4WBDZ2VYB2A\",\n                \"account_type\": \"SETTLEMENT_ACCOUNT\"\n            },\n            \"status\": \"EXECUTED\",\n            \"transaction_date\": \"2023-12-15\",\n            \"type\": \"MANUAL\",\n            \"updated_at\": \"2023-12-15T10:53:05.274Z\"\n        }\n    ],\n    \"total_payouts\": 2\n}"}],"_postman_id":"6aad56a7-5e4d-4e06-9429-4b8afddbdb22"},{"name":"/disputes (List Disputes)","event":[{"listen":"test","script":{"id":"d889e4fc-ccdb-42c4-995f-c04a156b27c2","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.total_disputes) {","    console.log(\"Total number of dispute records:\", jsonData.total_disputes);","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Disputes array or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"disputes\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"disputes\": {","                \"type\":\"array\",","                \"items\": {","                    \"type\":\"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"amount\": {\"type\":\"integer\"},","                        \"arn\": {\"type\":\"string\"},","                        \"card_details\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"brand\": {\"type\":\"string\"},","                            },","                            \"required\": []","                        },","                        \"created_at\": {\"type\":\"string\"},","                        \"currency\": {\"type\":\"string\"},","                        \"defense_period_deadline\": {\"type\":\"string\"},","                        \"dispute_id\": {\"type\":\"string\"},","                        \"dispute_status\": {","                            \"type\":\"string\",","                            \"enum\": [\"ACCEPTED\", \"ACTION_REQUIRED\", \"LOST\", \"PROCESSING\", \"UNDEFENDED\", \"WON\"]","                        },","                        \"is_auto_defended\": {\"type\":\"boolean\"},","                        \"is_defendable\": {\"type\":\"boolean\"},","                        \"issuer_comments\": {\"type\":\"object\"},","                        \"last_event_name\": {\"type\":\"string\"},","                        \"payment_id\": {\"type\":\"string\"},","                        \"payment_processor\": {\"type\":\"string\"},","                        \"payment_processor_dispute_code\": {\"type\":\"string\"},","                        \"payment_processor_dispute_reason\": {\"type\":\"string\"},","                        \"payment_processor_dispute_reference\": {\"type\":\"string\"},","                        \"payment_processor_dispute_status\": {\"type\":\"string\"},","                        \"payment_processor_merchant_reference\": {\"type\":\"string\"},","                        \"payment_processor_payment_reference\": {\"type\":\"string\"},","                        \"payment_reference\": {\"type\":\"string\"},","                        \"updated_at\": {\"type\":\"string\"}","                    },","                    \"required\" : [","                        \"amount\",","                        \"created_at\",","                        \"currency\",","                        \"dispute_id\",","                        \"dispute_status\",","                        \"last_event_name\",","                        \"payment_reference\",","                        \"updated_at\"","                    ]","                }","            },","            \"total_disputes\": {\"type\":\"number\"}","        },","        \"required\" : [","            \"disputes\",","            \"total_disputes\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"f49475a2-84df-40eb-940e-c04943040143","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/disputes?date_from=2025-07-01&offset=0&limit=100&date_to=2025-12-31","description":"<p>List Disputes associated with a Customer App.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"url-query-parameters\">URL Query parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>date_from</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>Start date for filtering (applied to Dispute <code>updated_at</code> field)</td>\n</tr>\n<tr>\n<td>date_to</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>End date for filtering (applied to Dispute <code>updated_at</code> field)</td>\n</tr>\n<tr>\n<td>statuses</td>\n<td>array of strings</td>\n<td>Comma-separated filter for specific Dispute statuses. Example: <code>statuses=PROCESSING,UNDEFENDED</code>.  <br />  <br />Refer to Dispute statuses below.</td>\n</tr>\n<tr>\n<td>limit</td>\n<td>integer, optional</td>\n<td>Maximum number of records per page (default: 500, max: 1000)</td>\n</tr>\n<tr>\n<td>offset</td>\n<td>integer, optional</td>\n<td>Pagination offset (default: 0)</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-fields\">Response fields</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>disputes</td>\n<td>array of Dispute objects</td>\n<td>List of Disputes objects that satisfy the filters in the request.  <br />  <br />Refer to Dispute object below.</td>\n</tr>\n<tr>\n<td>total_disputes</td>\n<td>integer</td>\n<td>Total number of Dispute records available for the selected filtering criteria (can be used to inform pagination requests)</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"dispute-object\">Dispute (object)</h3>\n<p>Current snapshot of each Dispute.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>amount</td>\n<td>integer (ISO 4217 \"minor\" currency unit)</td>\n<td>Amount of the disputed transaction (in minor currency unit)</td>\n</tr>\n<tr>\n<td>arn</td>\n<td>string, optional</td>\n<td>Disputed transaction's \"Acquirer Reference Number\" (if provided by the payment processor)</td>\n</tr>\n<tr>\n<td>card_details</td>\n<td>object, optional</td>\n<td>Details on the card payment method if the disputed transaction was paid by card (if provided by the payment processor)  <br />  <br />Refer to the Card <code>card_details</code> object data model in <code>GET /users/{payment_user_id}/payment_methods</code>.</td>\n</tr>\n<tr>\n<td>created_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp when the dispute record was first created</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code)</td>\n<td>Currency of the disputed transaction (e.g. HKD)</td>\n</tr>\n<tr>\n<td>defense_period_deadline</td>\n<td>string (ISO 8601 timestamp: date-time), optional</td>\n<td>Deadline to defend the dispute (if provided by the payment processor)</td>\n</tr>\n<tr>\n<td>dispute_id</td>\n<td>string (ULID)</td>\n<td>Finverse Dispute ID for this dispute record. Always unique.</td>\n</tr>\n<tr>\n<td>dispute_status</td>\n<td>string ENUM</td>\n<td>Current status of the dispute.  <br />  <br />Note: since disputes can be defended &amp; appealed by both parties, dispute statuses should not be considered final (e.g. <code>status</code> = <code>WON</code> or <code>LOST</code> are not final and may be reversed).  <br />  <br />Possible values:  <br />- <code>ACCEPTED</code>  <br />: indicates merchant has explicitly accepted the dispute (final status). Accepting a dispute is optional.  <br />- <code>ACTION_REQUIRED</code>: indicates a request for information has not yet received a response  <br />- <code>LOST</code>  <br />- <code>PROCESSING</code>: indicates defense information provided by the merchant is being reviewed.  <br />- <code>UNDEFENDED</code>: indicates the merchant has not yet taken action on the dispute (accepted or defended it). This is typically the initial status for any dispute.  <br />- <code>WON</code></td>\n</tr>\n<tr>\n<td>is_auto_defended</td>\n<td>boolean, optional</td>\n<td>Flag indicating whether the payment processor will auto-defend the dispute (if provided by the payment processor).  <br />  <br />Disputes may be auto-defended when the disputed transaction has already been refunded or is protected by 3D Secure, or when the dispute is technically invalid</td>\n</tr>\n<tr>\n<td>is_defendable</td>\n<td>boolean, optional</td>\n<td>Flag indicating whether the dispute can be defended (if provided by the payment processor).  <br />  <br />Typically this flag will be <code>true</code> so long as the <code>defense_period_deadline</code> has not expired.</td>\n</tr>\n<tr>\n<td>issuer_comments</td>\n<td>object, optional</td>\n<td>Comments/questions raised by the card issuer (if proivded by the payment processor).  <br />  <br />Issuer comments are typically provided when <code>payment_processor_dispute_status</code> = <code>ISSUER_COMMENTS</code>.  <br />  <br />Object contains plaintext fields in key:value format. E.g. <code>orderDetailsNotAsDescribed</code>: <code>some_text</code></td>\n</tr>\n<tr>\n<td>last_event_namd</td>\n<td>string</td>\n<td>Latest dispute event received by Finverse from the payment processor.  <br />  <br />The event name will typicaly provide information about the latest.  <br />  <br />For detailed dispute events, refer to each payment processor:  <br />- <code>ADYEN</code>: <a href=\"https://docs.adyen.com/risk-management/disputes-api/dispute-notifications/\">https://docs.adyen.com/risk-management/disputes-api/dispute-notifications/</a></td>\n</tr>\n<tr>\n<td>payment_id</td>\n<td>string (ULID), optional</td>\n<td>Finverse Payment ID for the disputed transaction (if Finverse is able to map the disputed transaction reference to a known Finverse Payment ID).</td>\n</tr>\n<tr>\n<td>payment_processor</td>\n<td>string ENUM</td>\n<td>Payment processor through which the disputed transaction was processed.  <br />  <br />Possible values:  <br />- <code>ADYEN</code></td>\n</tr>\n<tr>\n<td>payment_processor_dispute_code</td>\n<td>string, optional</td>\n<td>Dispute code ((if provided by the payment processor).  <br />  <br />For detailed guidance on dispute codes/reasons and defense requirements, refer to each payment processor:  <br />- <code>ADYEN</code>:  <br /><a href=\"https://docs.adyen.com/risk-management/understanding-disputes/dispute-reason-codes/\">https://docs.adyen.com/risk-management/understanding-disputes/dispute-reason-codes/</a></td>\n</tr>\n<tr>\n<td>payment_processor_dispute_reason</td>\n<td>string, optional</td>\n<td>Summary dispute reason associated with the <code>dispute_code</code> (if provided by the payment processor).  <br />  <br />See <code>dispute_code</code> above.</td>\n</tr>\n<tr>\n<td>payment_processor_dispute_reference</td>\n<td>string, optional</td>\n<td>Payment processor's reference for the dispute (if provided by the payment processor)</td>\n</tr>\n<tr>\n<td>payment_processor_dispute_status</td>\n<td>string, optional</td>\n<td>Payment processor's dispute status (if provided by the payment processor)</td>\n</tr>\n<tr>\n<td>payment_processor_merchant_reference</td>\n<td>string, optional</td>\n<td>Payment processor's merchant / store ID for the merchant account which collected the disputed transaction (if provided by the payment processor).</td>\n</tr>\n<tr>\n<td>payment_processor_payment_reference</td>\n<td>string, optional</td>\n<td>Payment processor's reference for the disputed transaction (if provided by the payment processor).</td>\n</tr>\n<tr>\n<td>payment_reference</td>\n<td>string, optional</td>\n<td>Merchant's original reference for the disputed transaction (if provided by the payment processor).</td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last update to the dispute's record</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["disputes"],"host":["https://api.prod.finverse.net"],"query":[{"key":"date_from","value":"2025-07-01"},{"disabled":true,"key":"statuses","value":"PROCESSING,UNDEFENDED"},{"key":"offset","value":"0"},{"key":"limit","value":"100"},{"key":"date_to","value":"2025-12-31"}],"variable":[]}},"response":[{"id":"3edc0caa-d3a1-451a-bf46-2e817f55c7b1","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":{"raw":"https://api.prod.finverse.net/disputes?date_from=2025-07-01&date_to=2025-08-31&statuses=PROCESSING,UNDEFENDED","host":["https://api.prod.finverse.net"],"path":["disputes"],"query":[{"key":"date_from","value":"2025-07-01"},{"key":"date_to","value":"2025-08-31"},{"key":"statuses","value":"PROCESSING,UNDEFENDED"},{"key":"limit","value":"0","disabled":true},{"key":"offset","value":"0","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1755493442"},{"key":"Date","value":"Mon, 18 Aug 2025 05:04:03 GMT"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"},{"key":"Transfer-Encoding","value":"chunked"}],"cookie":[],"responseTime":null,"body":"{\n    \"disputes\": [\n        {\n            \"amount\": 40,\n            \"arn\": \"Chargeback1755172216672\",\n            \"card_details\": {\n                \"brand\": \"Visa\"\n            },\n            \"created_at\": \"2025-08-14T12:36:10.481Z\",\n            \"currency\": \"HKD\",\n            \"defense_period_deadline\": \"2025-12-12T13:34:56.000Z\",\n            \"dispute_id\": \"01K2M9992N5GDH4KCKKJWJQ728\",\n            \"dispute_status\": \"UNDEFENDED\",\n            \"is_auto_defended\": false,\n            \"is_defendable\": true,\n            \"last_event_name\": \"CHARGEBACK\",\n            \"payment_processor\": \"ADYEN\",\n            \"payment_processor_dispute_code\": \"10.4\",\n            \"payment_processor_dispute_reason\": \"Other Fraud-Card Absent Environment\",\n            \"payment_processor_dispute_reference\": \"PX7RZWW4KZZBDR75\",\n            \"payment_processor_dispute_status\": \"Undefended\",\n            \"payment_processor_merchant_reference\": \"ST3293L223228K5MX4JRQDT89\",\n            \"payment_processor_payment_reference\": \"QL6DLL2SP66VL3V5\",\n            \"payment_reference\": \"1755172204\",\n            \"updated_at\": \"2025-08-14T13:27:22.948Z\"\n        },\n        {\n            \"amount\": 4014,\n            \"arn\": \"Chargeback1755172264736\",\n            \"card_details\": {\n                \"brand\": \"Visa\"\n            },\n            \"created_at\": \"2025-08-14T12:36:10.044Z\",\n            \"currency\": \"HKD\",\n            \"defense_period_deadline\": \"2025-12-12T13:34:56.000Z\",\n            \"dispute_id\": \"01K2M998NKC20C0E6FCW439QM9\",\n            \"dispute_status\": \"UNDEFENDED\",\n            \"is_auto_defended\": false,\n            \"is_defendable\": true,\n            \"last_event_name\": \"CHARGEBACK\",\n            \"payment_processor\": \"ADYEN\",\n            \"payment_processor_dispute_code\": \"10.4\",\n            \"payment_processor_dispute_reason\": \"Other Fraud-Card Absent Environment\",\n            \"payment_processor_dispute_reference\": \"N58RZWW4KZZBDR75\",\n            \"payment_processor_dispute_status\": \"Undefended\",\n            \"payment_processor_merchant_reference\": \"ST3293L223228K5MX4JRQDT89\",\n            \"payment_processor_payment_reference\": \"DX56JQKNF8VQ3M75\",\n            \"payment_reference\": \"1755172240\",\n            \"updated_at\": \"2025-08-14T13:27:23.485Z\"\n        },\n        {\n            \"amount\": 40,\n            \"arn\": \"Chargeback1755172235058\",\n            \"card_details\": {\n                \"brand\": \"Visa\"\n            },\n            \"created_at\": \"2025-08-14T12:32:00.152Z\",\n            \"currency\": \"HKD\",\n            \"defense_period_deadline\": \"2025-12-12T13:31:08.000Z\",\n            \"dispute_id\": \"01K2M91MMDSKJ3H1VQ0T9BTB85\",\n            \"dispute_status\": \"UNDEFENDED\",\n            \"is_auto_defended\": false,\n            \"is_defendable\": true,\n            \"last_event_name\": \"CHARGEBACK\",\n            \"payment_processor\": \"ADYEN\",\n            \"payment_processor_dispute_code\": \"10.4\",\n            \"payment_processor_dispute_reason\": \"Other Fraud-Card Absent Environment\",\n            \"payment_processor_dispute_reference\": \"C5GBRZTPJXXHQ2W5\",\n            \"payment_processor_dispute_status\": \"Undefended\",\n            \"payment_processor_merchant_reference\": \"ST3293L223228K5MX4JRQDT89\",\n            \"payment_processor_payment_reference\": \"H7SSRLLV66G47NV5\",\n            \"payment_reference\": \"1755172222\",\n            \"updated_at\": \"2025-08-14T13:32:00.097Z\"\n        }\n    ],\n    \"total_disputes\": 3\n}"}],"_postman_id":"f49475a2-84df-40eb-940e-c04943040143"},{"name":"/statement (Generate Finverse statement CSV)","event":[{"listen":"test","script":{"id":"9190e41d-ae45-454f-ab24-ebca65477113","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Payments or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"download_url\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"download_url\": {\"type\":\"string\"},","        },","       \"required\" : [","            \"download_url\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":[\"string\", \"number\"]},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {","                        \"type\":\"string\",","                        \"enum\": [\"API_ERROR\", \"LINKING_ERROR\", \"PAYMENT_ERROR\"]","                    }","                },","                \"required\" : [","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },","            \"code\": {\"type\":\"number\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"},  // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"a67b582f-5b4a-47f6-936b-00436f99d9fa","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"url":"https://api.prod.finverse.net/ledger/statement?date_from=2025-09-09&date_to=2025-09-09","description":"<p>Fetch a customer statement (in csv format) for all ledger transactions associated with a Customer App. The statement is returned as a short-lived URL link to the csv file.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"url-query-parameters\">URL Query parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>currency</td>\n<td>string, optional</td>\n<td>Filter for a specific currency</td>\n</tr>\n<tr>\n<td>date_from</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>UTC start date for filtering (applied to Payment <code>updated_at</code> field)</td>\n</tr>\n<tr>\n<td>date_to</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>UTC end date for filtering (applied to Payment <code>updated_at</code> field)</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-fields\">Response fields</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>download_url</td>\n<td>string (URL)</td>\n<td>URL where the statement csv file can be downloaded.  <br />  <br />Note: URL is valid for 60s only.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["ledger","statement"],"host":["https://api.prod.finverse.net"],"query":[{"disabled":true,"description":{"content":"<p>(Optional) Filter for a specific currency</p>\n","type":"text/plain"},"key":"currency","value":"HKD"},{"description":{"content":"<p>(Optional) UTC start date for filtering (applied to Payment updated_at field)</p>\n","type":"text/plain"},"key":"date_from","value":"2025-09-09"},{"description":{"content":"<p>(Optional) UTC end date for filtering (applied to Payment updated_at field)</p>\n","type":"text/plain"},"key":"date_to","value":"2025-09-09"}],"variable":[]}},"response":[{"id":"96b47c2b-9720-485c-9c5b-6576b0d0cce6","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":{"raw":"https://api.prod.finverse.net/ledger/statement?currency=HKD&date_from=2024-11-01&date_to=2024-11-15","host":["https://api.prod.finverse.net"],"path":["ledger","statement"],"query":[{"key":"currency","value":"HKD","description":"(Optional) Filter for a specific currency"},{"key":"date_from","value":"2024-11-01","description":"(Optional) UTC start date for filtering (applied to Payment updated_at field)"},{"key":"date_to","value":"2024-11-15","description":"(Optional) UTC end date for filtering (applied to Payment updated_at field)"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1731727624"},{"key":"Date","value":"Sat, 16 Nov 2024 03:27:04 GMT"},{"key":"Content-Length","value":"637"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"download_url\": \"https://storage.googleapis.com/prod-app-ledger/01GKRZX00MYHDW3KSA18NZP342/241115%20Finverse%20Statement%20-%20FV%20Team%20-%2020241101-20241115.csv?Expires=1731727684&GoogleAccessId=b-prod-app-payment%40finverseprod1.iam.gserviceaccount.com&Signature=2%2BT1P5HMccu2MwxNOlO77aEn4Fqzu9P%2BEj5IjgOIZwwHkmr2vceB4Ia9kQjt9o3p0AytAawGrDUhuTisYgYasKhFsMJLmk4vckbHBqck2n0HDbx%2Fqs7cGgMS0rvqtxH1BYk9Dl7eH2YFcQXpUo%2FhIMgDwSKny2UxLWrR3NsoVHxDMONYWM1hoeUFfOeYyZ6RgQNTD3Pc1WllYJfSjotOuniIXDkWRkvMtpG%2FOMXf5j%2BWqpzlNIo0N5xTLsCh7r16WpJEpyhugBl6zmSWVSjaQG3v5uEwWU%2B%2Fcq1Sl6cqWrfej0acZ7lQ9KQdu5k%2FrZLo41d9WobdudFStmHtR7g3mA%3D%3D\"\n}"}],"_postman_id":"a67b582f-5b4a-47f6-936b-00436f99d9fa"}],"id":"350a98e3-0dac-4048-9abd-07c8834da1ef","_postman_id":"350a98e3-0dac-4048-9abd-07c8834da1ef","description":""}],"id":"75daf0b8-e172-46c8-8692-20ac98c9766e","description":"<p>Finverse's Payments API allow you to:</p>\n<ol>\n<li><p><strong>Collections: Set up single and recurring payments (collections)</strong>, as well as direct debit mandates, from end-users' accounts at supported institutions</p>\n</li>\n<li><p><strong>Payouts: Setup payouts from Finverse</strong> to end-users' accounts at supported institutions.</p>\n</li>\n</ol>\n<h3 id=\"collections\"><strong>Collections</strong></h3>\n<p>Finverse supports two collections flows:</p>\n<ul>\n<li><p><strong>A. Payment Links (recommended integration)</strong>: our easy-to-use payment links allow end-users to select a payment method and confirm a payment directly in Finverse's UI. Finverse will also provide email notifications to end-users throughout the payment journey (e.g. when a Mandate is successfully setup, or a FPS payment is received). Payment Links support multiple payment methods:</p>\n<ul>\n<li><p>Direct debit mandates (enabled by default)</p>\n</li>\n<li><p>FPS QR code (enabled by default)</p>\n</li>\n<li><p>Credit cards (disabled by default -- contact Finverse to enable).</p>\n</li>\n</ul>\n</li>\n<li><p><strong>B. Mandate-based Payments</strong>: payments are executed based on a pre-authorized Mandate (e.g. Direct Debit mandate). This allows customers to separate the Mandate setup and Payment steps (e.g. to setup a Mandate upfront and collect a Payment 1 month later).</p>\n</li>\n</ul>\n<h3 id=\"payouts\"><strong>Payouts</strong></h3>\n<p>Finverse currently supports scheduled payouts, funded by either:</p>\n<ul>\n<li><p>Direct debit mandates you have setup</p>\n</li>\n<li><p>Your current funds balance</p>\n</li>\n</ul>\n<p>Please contact Finverse to enable access to Payouts and related endpoints (Payment Users, Payment Accounts).</p>\n<h1 id=\"get-started-payments-api\">Get Started: Payments API</h1>\n<p>After Finverse API authentication, follow these steps to collect a Payment from your first Institution (e.g. Testbank).</p>\n<h4 id=\"a-payment-links\">A. Payment Links</h4>\n<ol>\n<li><p>Create a Payment Link URL via <code>POST /payment_links</code></p>\n</li>\n<li><p>Invite the end-user to setup their Payment in the Finverse UI (using the Payment Link URL generated). The end-user will be asked to select their payment method, provide their payment details, and confirm the payment.</p>\n</li>\n<li><p>Check the Payment Link until the Payment Link status is <code>PAID</code> (via webhooks or <code>GET /payment_links/{payment_link_id}</code>)</p>\n</li>\n</ol>\n<h4 id=\"b-mandate-based-payment\">B. Mandate-based Payment</h4>\n<ol>\n<li><p>Create a Mandate via <code>POST /mandates</code></p>\n</li>\n<li><p>Generate a Mandate <code>link_url</code> using the <code>mandate_id</code> via <code>POST /mandates/link</code></p>\n</li>\n<li><p>Invite the end-user to authorize the Mandate in the Finverse UI (using the Mandate <code>link_url</code> generated). The end-user will be asked to confirm their account details.</p>\n</li>\n<li><p>Check the Mandate until the Mandate status is <code>SUCCEEDED</code> (via webhooks or <code>GET /mandates/{mandate_id}</code>)</p>\n</li>\n<li><p>Create a Payment via <code>POST /payments</code></p>\n</li>\n<li><p>Check the Payment until the Payment status is <code>EXECUTED</code> (via webhooks or <code>GET /payments/{payment_id}</code>)</p>\n</li>\n</ol>\n<p>Amount to be paid in currency's smallest unit. For example, HKD 100.01 is represented as amount = 10001. For currencies without minor units (e.g. VND, JPY), the amount is represented as is, without modification. For example, VND 15101 is represented as amount = 15101.</p>\n<h2 id=\"sequence-diagrams-payments-api\">Sequence diagrams: Payments API</h2>\n<h4 id=\"payment-links-payment-mode\">Payment Links: Payment mode</h4>\n<p>This flow is used to collect a one-time Payment from a user using an online link, with additional options to store the user's Payment Method and setup future autopayments.</p>\n<p>Link: <a href=\"https://www.websequencediagrams.com/files/render?link=c0O6uKrvZ1iEQt0MsZ7VqQECkVFXv3qrHn9G26jCsMvmmeYNL3ZurLYeGYUrxS4F\">https://www.websequencediagrams.com/files/render?link=c0O6uKrvZ1iEQt0MsZ7VqQECkVFXv3qrHn9G26jCsMvmmeYNL3ZurLYeGYUrxS4F</a></p>\n<img src=\"https://www.websequencediagrams.com/files/render?link=c0O6uKrvZ1iEQt0MsZ7VqQECkVFXv3qrHn9G26jCsMvmmeYNL3ZurLYeGYUrxS4F\" />\n\n<h4 id=\"payment-links-setup-mode\">Payment Links: Setup mode</h4>\n<p>This flow is used to create an online link for a user to setup &amp; store a Payment Method for future payments (using the Payment collection flow below).</p>\n<p>Link: <a href=\"https://www.websequencediagrams.com/files/render?link=qAkzv0HFqt30P7Rrd7tFMRnxjPh46XJ3oBW5Qv4uydLDqlGNWuxNSDfRgVLV8PNL\">https://www.websequencediagrams.com/files/render?link=qAkzv0HFqt30P7Rrd7tFMRnxjPh46XJ3oBW5Qv4uydLDqlGNWuxNSDfRgVLV8PNL</a></p>\n<img src=\"https://www.websequencediagrams.com/files/render?link=qAkzv0HFqt30P7Rrd7tFMRnxjPh46XJ3oBW5Qv4uydLDqlGNWuxNSDfRgVLV8PNL\" />\n\n<h4 id=\"direct-debit-mandate-setup-flow-egiroedda-setup\">Direct debit mandate setup flow (eGIRO/eDDA setup)</h4>\n<p>This flow is used to allow users to setup a direct debit authorization mandate (i.e. eGIRO/eDDA setup), which can then be used to collect future payments (using the Payment collection flow below).</p>\n<p>Link: <a href=\"https://www.websequencediagrams.com/files/render?link=zXIsAsJ7toRuonMp1UDqinpmXFUKrqUqCa1TvNK26hCY0oE3fMiOCS4NwTqUB9GL\">https://www.websequencediagrams.com/files/render?link=zXIsAsJ7toRuonMp1UDqinpmXFUKrqUqCa1TvNK26hCY0oE3fMiOCS4NwTqUB9GL</a></p>\n<img src=\"https://www.websequencediagrams.com/files/render?link=zXIsAsJ7toRuonMp1UDqinpmXFUKrqUqCa1TvNK26hCY0oE3fMiOCS4NwTqUB9GL\" />\n\n<h4 id=\"payment-collection-flow-using-a-stored-payment-method\">Payment collection flow (using a stored Payment Method)</h4>\n<p>This flow is used by merchants to initiate a Payment collection using a user's stored Payment Method (any stored payment method including card or direct debit mandate).</p>\n<p>Link: <a href=\"https://www.websequencediagrams.com/files/render?link=AqlmKXs8id6FBdOql9U5pzLdBfI76YBBgLWI5HGO4w3jn5Tz7WbEJ4ylMMiU7Wjq\">https://www.websequencediagrams.com/files/render?link=AqlmKXs8id6FBdOql9U5pzLdBfI76YBBgLWI5HGO4w3jn5Tz7WbEJ4ylMMiU7Wjq</a></p>\n<img src=\"https://www.websequencediagrams.com/files/render?link=AqlmKXs8id6FBdOql9U5pzLdBfI76YBBgLWI5HGO4w3jn5Tz7WbEJ4ylMMiU7Wjq\" />\n\n<h1 id=\"implementation-notes\">Implementation notes</h1>\n<h4 id=\"currency-amounts-minor-units\">Currency amounts: \"Minor\" units</h4>\n<p><strong>All amounts in the Payments API are expressed as integers in ISO 4217 \"minor\" currency units.</strong></p>\n<p>A \"minor\" currency unit represents an amount in a currency's smallest unit (usually, but not always, \"cents\"). For example, HKD 100.01 is represented as amount = 10001.</p>\n<p>For currencies without minor units (e.g. VND, JPY), the amount is represented as is, without modification. For example, VND 15101 is represented as amount = 15101.</p>\n<h4 id=\"idempotent-requests\">Idempotent requests</h4>\n<p>Certain <code>POST</code> requests require an <code>Idempotency-Key</code> header. This makes it safe to retry the request without re-triggering the underlying operation. Any retries (within 24 hours) will return the same response as the first request using the same key.</p>\n<p>Idempotent requests work by saving the response of the first request made for the idempotency key (after the request passes validation). Subsequent requests with the same key return the same result.</p>\n<p>The idempotency key should be a unique key with enough entropy to avoid collisions. We recommend using UUIDs, ULIDs or similar random strings.</p>\n","_postman_id":"75daf0b8-e172-46c8-8692-20ac98c9766e"},{"name":"Data API","item":[{"name":"01 - Link Institution via Finverse Link UI (in browser)","item":[{"name":"/link/token (Generate link_url)","event":[{"listen":"test","script":{"id":"72530f80-b647-4dc3-91e9-87938b0560b9","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","pm.environment.set(\"link_token\", jsonData.access_token);","pm.environment.set(\"link_url\", jsonData.link_url);","","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Access Token or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"access_token\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"access_token\": {\"type\":\"string\"},","            \"expires_in\": {\"type\":\"integer\"},","            \"issued_at\": {\"type\":\"string\"},","            \"link_url\": {\"type\":\"string\"},","            \"token_type\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"access_token\",","            \"expires_in\",","            \"issued_at\",","            \"link_url\",","            \"token_type\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"d08e09c9-ee6b-44c9-b2ac-27111a86c81d","protocolProfileBehavior":{"disableBodyPruning":true,"disabledSystemHeaders":{}},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"client_id\": \"setup_on_developer_portal\",\n    \"user_id\": \"customer_user1\",\n    \"redirect_uri\": \"https://developer.prod.finverse.net/sink\",\n    \"state\": \"setup_on_developer_portal_stateparameter\",\n    \"grant_type\": \"client_credentials\",\n    \"response_mode\": \"form_post\",\n    \"response_type\": \"code\",\n    \"automatic_data_refresh\": \"\",\n    \"countries\": [],\n    //\"history_date_limit\": \"2026-03-01\",\n    \"institution_id\": \"\",\n    \"institution_status\": \"alpha beta supported\",\n    \"language\": \"en\",\n    \"link_mode\": \"\",\n    \"products_requested\": [],\n    \"products_supported\": [],\n    \"ui_mode\": \"\",\n    \"user_configs\": {},\n    \"user_type\": []\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/link/token","description":"<p>Generate a short-lived Finverse Link access_token (referred to as <code>link_token</code>) and URL (link_url) to open Finverse Link UI in a browser window. The link_token is associated with a specific Customer App (client_id) and End-User (user_id), and expires after 5 minutes (resend request to renew).</p>\n<p>Note:<code>redirect_uri</code> must be valid and associated with the <code>client_id</code>.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code>.</p>\n<h1 id=\"request-parameters\">Request parameters</h1>\n<h2 id=\"required-parameters\">Required parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>client_id</td>\n<td>string, required</td>\n<td>Assigned by Finverse when setting up API credentials in Finverse's customer dashboard (dashboard.finverse.com)</td>\n</tr>\n<tr>\n<td>redirect_uri</td>\n<td>string, required</td>\n<td>Finverse Link UI will redirect to this uri after either success or failure</td>\n</tr>\n<tr>\n<td>state</td>\n<td>string, required</td>\n<td>Customer-supplied state (treated as an opaque value), used by customer to uniquely identify the linking session</td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>string, required</td>\n<td>Customer-supplied ID, used by customer to uniquely identify the user</td>\n</tr>\n<tr>\n<td>grant_type</td>\n<td>string ENUM, required</td>\n<td>Always equal to: <code>client_credentials</code></td>\n</tr>\n<tr>\n<td>response_mode</td>\n<td>string ENUM, required</td>\n<td>Always equal to: <code>form_post</code></td>\n</tr>\n<tr>\n<td>response_type</td>\n<td>string ENUM, required</td>\n<td>Always equal to: <code>code</code></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"optional-parameters\">Optional parameters</h2>\n<p>You can use the following optional parameters to customize the behaviour of Finverse Link's UI to fit your implementation requirements.</p>\n<h3 id=\"automatic-data-refresh\">Automatic data refresh</h3>\n<p>Parameter: <code>automatic_data_refresh</code></p>\n<p>Description: Configures the \"Automatic data refresh\" checkbox in Finverse Link's \"Enter your credentials\" input screen.</p>\n<p>Recommended value: <code>\"\"</code> (none). This defaults to <code>OFF</code> (i.e. checkbox unchecked, user editable).</p>\n<p>Accepted values:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Value</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>OFF</code></td>\n<td>Unchecked, user editable</td>\n</tr>\n<tr>\n<td><code>ON</code></td>\n<td>Checked, user editable</td>\n</tr>\n<tr>\n<td><code>FORCED_ON</code></td>\n<td>Checked, NOT user editable</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"countries\">Countries</h3>\n<p>Parameter: <code>countries</code></p>\n<p>Description: Filters the \"Select Institution\" screen in the Finverse Link UI to only list institutions from the specified countries. If left empty, all institutions are listed.</p>\n<p>Recommended value: [ ]</p>\n<p>Accepted values: JSON-array of 3-letter ISO-3166-1 Alpha-3 codes (e.g. <code>[\"SGP\", \"VNM\"]</code>)</p>\n<h3 id=\"history-date-limit\">History Date Limit</h3>\n<p>Parameter: <code>history_date_limit</code></p>\n<p>Description: sets a specific start date limit for the transaction history retrieved by Finverse from the institution. This is useful when you only need Finverse to fetch recent transactions and want to speed up data retrieval. If omitted, Finverse will fetch the full available transaction history (3-24 months depending on the institution).</p>\n<p>Recommended Value: omit the parameter</p>\n<p>Accepted values: ISO 8601 date string (\"YYYY-MM-DD\")</p>\n<h3 id=\"institution-id\">Institution ID</h3>\n<p>Parameter: <code>institution_id</code></p>\n<p>Description: Instructs Finverse Link UI to skip the institution selection screen (after the consent screen), and instead go straight to the login screen of the specified institution.</p>\n<p>Recommended Value: \"\"</p>\n<p>Accepted values: A single institution's <code>institution_id</code> (see <code>GET /institutions</code>).</p>\n<h3 id=\"institution-status\">Institution status</h3>\n<p>Parameter: <code>institution_status</code></p>\n<p>Description: Specifies which institutions to list in the Finverse Link UI based on their reliability status (e.g. \"beta\" status).</p>\n<p>Recommended value: \"\"</p>\n<p>Accepted values: space-separated list</p>\n<ul>\n<li><p><code>beta</code> : show only institutions that are in \"beta\" status</p>\n</li>\n<li><p><code>supported</code> : show only institutions that are in \"supported\" status (default for Customer Apps in live mode)</p>\n</li>\n<li><p><code>beta supported</code> : show both \"beta\" and \"supported\" institutions (default for Customer Apps in test mode)</p>\n</li>\n</ul>\n<h3 id=\"language\">Language</h3>\n<p>Parameter: <code>language</code></p>\n<p>Description: Specifies the desired language selection for Finverse Link.</p>\n<p>Recommended value: \"\" or any valid language code (based on desired UI). If empty or if an unsupported language is specified, Finverse Link will display the default language (<code>en</code>).</p>\n<p>Accepted values: 2-letter ISO 639-1 alpha-2 code. Supported languages:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>ISO 639-1 alpha-2 code</strong></th>\n<th><strong>Language</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>en</td>\n<td>English  <br /><em>(default)</em></td>\n</tr>\n<tr>\n<td>zh</td>\n<td>Chinese (Traditional)</td>\n</tr>\n<tr>\n<td>vi</td>\n<td>Vietnamese</td>\n</tr>\n</tbody>\n</table>\n</div><p>(note: inputs are case-sensitive)</p>\n<h3 id=\"link-mode\">Link mode</h3>\n<p>Parameter: <code>link_mode</code></p>\n<p>Description: Specifies whether to display specific sets of institutions (e.g. test institutions) in the Finverse Link UI. This can be helpful for testing purposes, for example to force-display test institutions when testing in the Finverse Prod environment.</p>\n<p>Recommended value: \"\" for live apps; \"test\" or \"real test\" for test apps.</p>\n<p>Accepted values: space-separated list</p>\n<ul>\n<li><p><code>real</code> : show only real banks (default)</p>\n</li>\n<li><p><code>test</code> : show only test banks</p>\n</li>\n<li><p><code>real test</code> shows both real banks &amp; test banks</p>\n</li>\n</ul>\n<h3 id=\"products-requested\">Products requested</h3>\n<p>Parameter: <code>products_requested</code></p>\n<p>Description: Instructs Finverse to only fetch the products specified in this field. If left empty, Finverse will fetch all data products.</p>\n<p>Recommended value: [ ]</p>\n<p>Accepted values: JSON-array of strings of Finverse products (e.g. <code>[\"ACCOUNTS\", \"TRANSACTIONS\"]</code>)</p>\n<h3 id=\"products-supported\">Products supported</h3>\n<p>Parameter: <code>products_supported</code></p>\n<p>Description: Filters the \"Select Institution\" screen in the Finverse Link UI to only list institutions which support the specified products. If left empty, all institutions are listed.</p>\n<p>Recommended value: [ ]</p>\n<p>Accepted values: JSON-array of strings of Finverse products (e.g. <code>[\"ACCOUNT_NUMBERS\", \"IDENTITY\", \"STATEMENTS\"]</code>)</p>\n<h3 id=\"ui-mode\">UI mode</h3>\n<p>Parameter: <code>ui_mode</code></p>\n<p>Description: Specifies the behaviour of the Finverse Link UI upon completion of the linking flow (in both success or error cases). If left empty, Finverse Link will default to <code>iframe</code> behaviour for the Data institution linking UI.</p>\n<p>Recommended values: any (based on desired UI)</p>\n<p>Accepted values:</p>\n<ul>\n<li><p><code>\"\"</code>: defaults to <code>iframe</code> behaviour for the Data institution linking UI.</p>\n</li>\n<li><p><code>iframe</code>: for use when the Finverse Link UI is launched as an iframe/webview embedded within the customer's application. On success/error, the callback to the customer's <code>redirect_uri</code> is triggered in the background, and the response is silently discarded. Finverse will display an Exit (\"X\") button on each screen and a \"Continue\" button on final success/error screens, allowing the user to close the iframe/webview and return to the customer's application (requires customer's application to handle iframe/webview messages).</p>\n</li>\n<li><p><code>redirect</code>: for use when the Finverse Link UI is launched in a new window/webview. On success/error, the callback isn't triggered immediately, but is bound to the \"Continue\" and \"Exit\" buttons. When the user clicks either button, the UI will navigate to the customer's <code>redirect_uri</code>.</p>\n</li>\n<li><p><code>auto_redirect</code>: similar to <code>redirect</code> mode, for use when the Finverse Link UI is launched in a new window/webview. On success/error, the callback is automatically triggered after 1 second, and the UI navigates to the customer's <code>redirect_uri</code>.</p>\n</li>\n<li><p><code>standalone</code>: for use when the Finverse Link UI is launched in a new window/webview without the need to navigate back to the customer's application. On success/error, the callback to the customer's <code>redirect_uri</code> is triggered in the background, and the response is silently discarded. Finverse will display a \"You may close this window now\" message on final success/error screens, guiding the user to manually close the window/webview.</p>\n</li>\n</ul>\n<h3 id=\"user-configs\">User configs</h3>\n<blockquote>\n<p>Beta (subject to change). </p>\n</blockquote>\n<p>Parameter: <code>user_configs</code></p>\n<p>Description: Object to configure additional user-level inputs for the User's authentication &amp; data retrieval session.</p>\n<p>Recommended value: {}</p>\n<p>Accepted values: see below</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>ada_account_number</td>\n<td>string, optional</td>\n<td>User's account number for which an auto debit authorization should be setup.  <br />  <br />This value should exactly match the account number used by the bank (without symbols, but including any leading <code>0</code>s).  <br />  <br />Note: only applies to linking sessions where Finverse sets up an auto-debit / direct debit authorization (i.e. where institution's <code>products_supported</code> = <code>AUTO_DEBIT_SETUP</code>).</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"user-type\">User type</h3>\n<p>Parameter: <code>user_type</code></p>\n<p>Description: Filters the \"Select Institution\" screen in the Finverse Link UI to only list institutions which support the specified user type (e.g. individual vs. business accounts). If left empty, all institutions are listed.</p>\n<p>Recommended value: [ ]</p>\n<p>Accepted values: JSON-array of strings of Finverse user types (e.g. <code>[\"BUSINESS\", \"INDIVIDUAL\"]</code>)</p>\n<h1 id=\"response-fields\">Response fields</h1>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>access_token</td>\n<td>string</td>\n<td>Link session token (referred to as <code>link_token</code>)</td>\n</tr>\n<tr>\n<td>expires_in</td>\n<td>integer</td>\n<td>Token validity length (in seconds)</td>\n</tr>\n<tr>\n<td>issued_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Token issue time</td>\n</tr>\n<tr>\n<td>link_url</td>\n<td>string</td>\n<td>URL to launch the Finverse Link UI flow associated with this <code>link_token</code>, for the end-user to provide required consent and linking inputs.</td>\n</tr>\n<tr>\n<td>token_type</td>\n<td>string ENUM</td>\n<td>Possible values: <code>Bearer</code></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"token-handling\">Token handling</h2>\n<h3 id=\"usage\">Usage</h3>\n<p><code>link_token</code> is intended for use by front-end clients to call Finverse API. It is the only Finverse API token that is considered non-sensitive.</p>\n<h3 id=\"renewal\">Renewal</h3>\n<p><code>link_token</code> expires after 5 minutes.</p>\n<p>Repeat this request for token renewal.</p>\n","urlObject":{"path":["link","token"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"bfe941a6-d9b3-4ea7-bc30-e3ddb1e03877","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"client_id\": \"setup_on_developer_portal\",\n    \"redirect_uri\": \"https://developer.prod.finverse.net/sink\",\n    \"state\": \"setup_on_developer_portal_stateparameter\",\n    \"user_id\": \"customer_user1\",\n    \"grant_type\": \"client_credentials\",\n    \"response_mode\": \"form_post\",\n    \"response_type\": \"code\",\n    \"automatic_data_refresh\": \"\",\n    \"countries\": [],\n    \"institution_id\": \"\",\n    \"institution_status\": \"\",\n    \"language\": \"\",\n    \"link_mode\": \"\",\n    \"products_supported\": [],\n    \"ui_mode\": \"\",\n    \"user_type\": []\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/link/token"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-9bb3c227b0d8f3ed6d732097d109375b-835f6789825528a0-01"},{"key":"vary","value":"Origin"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Tue, 15 Feb 2022 03:45:37 GMT"},{"key":"x-envoy-upstream-service-time","value":"75"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"transfer-encoding","value":"chunked"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"access_token\": \"{link_token}\",\n    \"expires_in\": 300,\n    \"issued_at\": \"2022-08-01T01:01:00.000Z\",\n    \"link_url\": \"https://link.sandbox.finverse.net/onboarding?token={link_token}\",\n    \"token_type\": \"Bearer\"\n}"},{"id":"c8b67a64-67f7-48e2-97be-02660b40c28b","name":"Error (invalid parameter value, e.g. invalid redirect_uri)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","type":"text","value":"1777634238"}],"body":{"mode":"raw","raw":"{\n    \"client_id\": \"setup_on_developer_portal\",\n    \"user_id\": \"customer_user1\",\n    \"redirect_uri\": \"https://developer.prod.finverse.net/sink\",\n    \"state\": \"setup_on_developer_portal_stateparameter\",\n    \"grant_type\": \"client_credentials\",\n    \"response_mode\": \"form_post\",\n    \"response_type\": \"code\",\n    \"automatic_data_refresh\": \"\",\n    \"countries\": [],\n    \"institution_id\": \"\",\n    \"institution_status\": \"\",\n    \"language\": \"\",\n    \"link_mode\": \"\",\n    \"products_requested\": [],\n    \"products_supported\": [],\n    \"ui_mode\": \"\",\n    \"user_type\": []\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/link/token"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Tue, 27 Sep 2022 11:05:56 GMT"},{"key":"Content-Length","value":"263"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40006,\n        \"details\": \"Invalid redirect_uri value. Verify your redirect_uri\",\n        \"error_code\": \"INVALID_INPUT\",\n        \"message\": \"Invalid parameter value(s). Please review parameter inputs.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"d08e09c9-ee6b-44c9-b2ac-27111a86c81d"},{"name":"Launch Finverse Link UI","id":"3c82728e-9261-4041-84fb-efa6cda9ee8c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"{{link_url}}","description":"<p>Open Finverse Link UI using the <code>link_url</code> generated by <code>POST /link/token</code>.</p>\n<p>To open the Link UI in browser, either (a) press cmd+click on the <code>link_url</code> response to <code>POST /link/token</code> to launch a new browser window, or (b) copy the URL from this GET request into a browser window (the full URL can be copied from Postman console after first making the GET request)</p>\n","urlObject":{"host":["{{link_url}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"3c82728e-9261-4041-84fb-efa6cda9ee8c"},{"name":"/auth/token (Exchange Link Code for login_identity_token and login_identity_id)","event":[{"listen":"test","script":{"id":"ff7a92be-3b44-44f8-ac9f-aa39eec0b61d","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","pm.environment.set(\"login_identity_token\", jsonData.access_token);","pm.environment.set(\"login_identity_id\", jsonData.login_identity_id);","pm.environment.set(\"login_identity_refresh_token\", jsonData.refresh_token);","","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Access Token or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"access_token\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"access_token\": {\"type\":\"string\"},","            \"expires_in\": {\"type\":\"integer\"},","            \"issued_at\": {\"type\":[\"string\", \"number\", \"null\"]}, // TO BE CHANGED TO STRING ONLY","            \"login_identity_id\": {\"type\":\"string\"},","            \"refresh_token\": {\"type\":\"string\"},","            \"token_type\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"access_token\",","            \"expires_in\",","            \"issued_at\",","            \"login_identity_id\",","            \"refresh_token\",","            \"token_type\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"e586ed3e-bb89-4aa2-a55e-cfc4105660f3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","key":"X-Request-Id","type":"text","value":"1777634238"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"client_id","type":"text","value":"setup_on_developer_portal"},{"description":"<p>Manually retrieve this from Finverse Link URL (query parameter: ?code=X) after successfully linking an institution.</p>\n","key":"code","type":"text","value":"{{link_auth_code}}"},{"key":"redirect_uri","type":"text","value":"https://developer.prod.finverse.net/sink"},{"key":"grant_type","type":"text","value":"authorization_code"}]},"url":"https://api.prod.finverse.net/auth/token","description":"<p>Exchange the one-time auth <code>code</code> (from a successful Finverse linking redirect) for a <code>login_identity_token</code> and its associated <code>login_identity_refresh_token</code>.</p>\n<p>Note: a Login Identity represents a unique financial institution authenticated account linked by the end-user. An end-user who links multiple Institutions (or multiple authenticated accounts at the same Institution), will have a distinct Login Identity for each linked account.</p>\n<p><strong>Important:</strong> make sure to use the Header <code>Content-Type: application/x-www-form-urlencoded</code> for this request (in accordance with OAuth specification for code exchange)</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h1 id=\"request-parameters\">Request parameters</h1>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>client_id</td>\n<td>string, required</td>\n<td>See API credentials. Managed on Finverse developer dashboard (<a href=\"https://desktop.postman.com/?desktopVersion=9.31.0&amp;userId=11503733&amp;teamId=1064586\">dashboard.finverse.com</a>)</td>\n</tr>\n<tr>\n<td>code</td>\n<td>string, required</td>\n<td>Use <code>code</code> URL parameter returned to Customer App's redirect URI</td>\n</tr>\n<tr>\n<td>redirect_uri</td>\n<td>string, required</td>\n<td>Must match the <code>redirect_uri</code> associated with the Customer App. Managed on Finverse developer dashboard (<a href=\"https://desktop.postman.com/?desktopVersion=9.31.0&amp;userId=11503733&amp;teamId=1064586\">dashboard.finverse.com</a>)</td>\n</tr>\n<tr>\n<td>grant_type</td>\n<td>string ENUM, required</td>\n<td>Accepted values: <code>authorization_code</code></td>\n</tr>\n</tbody>\n</table>\n</div><h1 id=\"response-fields\">Response fields</h1>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>access_token</td>\n<td>string</td>\n<td><strong>(SENSITIVE)</strong> Login Identity access token (referred to as <code>login_identity_token</code>).</td>\n</tr>\n<tr>\n<td>expires_in</td>\n<td>integer</td>\n<td>Access token validity length (in seconds).</td>\n</tr>\n<tr>\n<td>issued_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Access token issue time</td>\n</tr>\n<tr>\n<td>login_identity_id</td>\n<td>string (ULID)</td>\n<td>Finverse Login Identity ID for this Login Identity. Always unique. Linking the same account at the same institution twice will result in two Login Identities with different IDs (use Refresh/Relink methods to refresh data for a Login Identity without updating the ID).</td>\n</tr>\n<tr>\n<td>refresh_token</td>\n<td>string</td>\n<td><strong>(SENSITIVE)</strong> Login Identity refresh token (referred to as <code>login_identity_refresh_token</code>)</td>\n</tr>\n<tr>\n<td>token_type</td>\n<td>string ENUM</td>\n<td>Possible values: <code>Bearer</code></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"token-handling\">Token handling</h2>\n<h3 id=\"storage\">Storage</h3>\n<p><code>login_identity_token</code> and <code>login_identity_refresh_token</code> are highly sensitive as they are needed to retrieve data on each Login Identity.</p>\n<p>Best practices:</p>\n<p>* Securely store each token in your back-end<br />* Never disclose the tokens externally (e.g. in your front-end).</p>\n<h3 id=\"renewal\">Renewal</h3>\n<p><code>login_identity_token</code> expires after 1 hour. <code>login_identity_refresh_token</code> expires after 90 days.</p>\n<p>Implement <code>POST /auth/token/refresh</code> for token renewal.</p>\n","urlObject":{"path":["auth","token"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"0acd4443-324d-423e-9d02-9c50270d6fb3","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"client_id","value":"setup_on_developer_portal","type":"text"},{"key":"code","value":"01EW29TK9B557KW9SH1BV0XQBF","type":"text","description":"Manually retrieve this from Finverse Link URL (query parameter: ?code=X) after successfully linking an institution."},{"key":"redirect_uri","value":"https://developer.prod.finverse.net/sink","type":"text"},{"key":"grant_type","value":"authorization_code","type":"text"}]},"url":"https://api.prod.finverse.net/auth/token"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-14927d506685516f08b948376357004c-6dbc8f3f9983443c-01"},{"key":"vary","value":"Origin"},{"key":"x-cloud-trace-context","value":"14927d506685516f08b948376357004c/7907352549076976700;o=1"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Fri, 15 Jan 2021 05:58:54 GMT"},{"key":"x-envoy-upstream-service-time","value":"214"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"transfer-encoding","value":"chunked"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"access_token\": \"{login_identity_token}\",\n    \"expires_in\": 3600,\n    \"issued_at\": \"2022-08-01T01:01:00.000Z\",\n    \"login_identity_id\": \"login_identity_id\",\n    \"refresh_token\": \"{login_identity_refresh_token}\",\n    \"token_type\": \"Bearer\"\n}"},{"id":"af5c40d5-adab-4622-9987-d6af2a343b79","name":"Error (invalid or expired code)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","type":"text","value":"1777634238"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"client_id","type":"text","value":"setup_on_developer_portal"},{"description":"Manually retrieve this from Finverse Link URL (query parameter: ?code=X) after successfully linking an institution.","key":"code","type":"text","value":"01EZV0857T68KKEQH2J7Q5TTPD"},{"key":"redirect_uri","type":"text","value":"https://developer.prod.finverse.net/sink"},{"key":"grant_type","type":"text","value":"authorization_code"}]},"url":"https://api.prod.finverse.net/auth/token"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Fri, 23 Sep 2022 11:04:16 GMT"},{"key":"Content-Length","value":"265"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40001,\n        \"details\": \"Invalid code.\",\n        \"error_code\": \"INVALID_GRANT\",\n        \"message\": \"One or more authorization parameters is invalid, expired or revoked. Please review parameter inputs.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"e586ed3e-bb89-4aa2-a55e-cfc4105660f3"}],"id":"2f3e0a5d-6bad-409d-8cd3-96b4c16b7e72","_postman_id":"2f3e0a5d-6bad-409d-8cd3-96b4c16b7e72","description":""},{"name":"02 - Login Identity","item":[{"name":"/login_identity","event":[{"listen":"test","script":{"id":"30cdc299-4ab7-407a-8e30-34f7b42a956a","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.login_identity) {","    console.log(\"login_identity.login_identity_id:\", jsonData.login_identity.login_identity_id);","    console.log(\"login_identity.authentication_status.status:\", jsonData.login_identity.authentication_status.status);","    console.log(\"login_identity.session_status:\", jsonData.login_identity.session_status);","    console.log(\"login_identity.status:\", jsonData.login_identity.status);","    console.log(\"login_identity.product_status:\", jsonData.login_identity.product_status);","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Login Identity or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"login_identity\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"institution\": {\"type\":\"object\"},","            \"login_identity\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"authentication_id\": {\"type\":\"string\"},","                    \"authentication_status\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"last_successful_update\": {\"type\":\"string\"},","                            \"last_update\": {\"type\":\"string\"},","                            \"status\": {\"type\":\"string\"},","                            \"status_details\": {\"type\":\"string\"}","                        },","                        \"required\" : [","                            \"last_successful_update\",","                            \"last_update\",","                            \"status\",","                            \"status_details\"       ","                        ]","                    },","                    \"billing_details\": {\"type\":\"object\"},","                    \"created_at\": {\"type\":\"string\"},","                    \"customer_app_id\": {\"type\":\"string\"},","                    \"error\": {\"type\":\"object\"},","                    \"first_success\": {\"type\":\"string\"},","                    \"institution_id\": {\"type\":\"string\"},","                    \"last_session_id\": {\"type\":\"string\"},","                    \"last_success\": {\"type\":\"string\"},","                    \"linking_attempt_id\": {\"type\":\"string\"},","                    \"login_identity_id\": {\"type\":\"string\"},","                    \"login_methods_available\": {\"type\":\"object\"},","                    \"permissions\": {\"type\":\"null\"},","                    \"permissions_expiry_date\": {\"type\":\"string\"},","                    \"permissions_grant_date\": {\"type\":\"string\"},","                    \"product_status\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"accounts\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                            \"account_numbers\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                            \"balance_history\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                            \"card_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                            \"historical_transactions\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },","                           \"identity\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },","                            \"income_estimation\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                            \"online_transactions\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },","                            \"statements\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                        },","                        \"required\" : [","                            \"accounts\",","                            \"online_transactions\"","                        //    \"account_numbers\",","                        //    \"card_details\",","                        //.   \"historical_transactions\",","                        //    \"identity\",","                        //    \"statements\",","                        ]","                    },","                    \"refresh\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"credentials_stored\": {\"type\":\"boolean\"},","                            \"refresh_allowed\": {\"type\":\"boolean\"}","                        },","                        \"required\" : [","                            \"credentials_stored\",","                            \"refresh_allowed\"","                        ]","                    },","                    \"session_status\": {\"type\":\"string\"},","                    \"status\": {\"type\":\"string\"},","                    \"status_details\": {\"type\":\"object\"},","                    \"updated_at\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                    \"webhook\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"authentication_id\",","                    \"authentication_status\",","                    \"billing_details\",","                    \"created_at\",","                    \"customer_app_id\",","                    \"error\",","                    \"first_success\",","                    \"institution_id\",","                    \"last_session_id\",","                    \"last_success\",","                    \"linking_attempt_id\",","                    \"login_identity_id\",","                    \"login_methods_available\",","                    \"permissions\",","                    \"permissions_expiry_date\",","                    \"permissions_grant_date\",","                    \"product_status\",","                    \"refresh\",","                    \"session_status\",","                    \"status\",","                    \"status_details\",","                    \"updated_at\",","                    \"user_id\",","                    \"webhook\"                ","                ]","            }","        },","        \"required\" : [","            \"institution\",","            \"login_identity\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","","//CUSTOM TESTS - START","//Authentication status","pm.test(\"Login Identity authentication_status.status is AUTHENTICATED\", function() {","    pm.expect(jsonData.login_identity.authentication_status.status).to.eql(\"AUTHENTICATED\")","});","//CUSTOM TESTS - END","","","//[NO_DOC] ADDITIONAL DATA RETRIEVAL TESTS - START","if (pm.environment.get(\"run_data_retrieval_tests\") === \"true\") {","","    pm.test(\"Login Identity status is DATA_RETRIEVAL_COMPLETE\", function() {","    pm.expect(jsonData.login_identity.status).to.eql(\"DATA_RETRIEVAL_COMPLETE\")","    });","","    pm.test(\"Login Identity product_status.accounts.status is SUCCESS\", function() {","        pm.expect(jsonData.login_identity.product_status.accounts.status).to.eql(\"SUCCESS\")","    });","","    pm.test(\"Login Identity product_status.online_transactions.status is SUCCESS\", function() {","        pm.expect(jsonData.login_identity.product_status.online_transactions.status).to.eql(\"SUCCESS\")","    });","","    if (pm.environment.get(\"is_account_numbers_enabled\") === \"true\") {","        pm.test(\"Login Identity product_status.account_numbers.status is SUCCESS or WARNING\", function() {","            pm.expect(jsonData.login_identity.product_status.account_numbers.status).to.be.oneOf([\"SUCCESS\", \"WARNING\"])","        })    ","    }","    else {","        pm.test(\"Login Identity product_status.is_account_numbers.status is NOT_SUPPORTED\", function() {","            pm.expect(jsonData.login_identity.product_status.account_numbers.status).to.eql(\"NOT_SUPPORTED\")","        })","    };","","    if (pm.environment.get(\"is_balance_history_enabled\") === \"true\") {","        pm.test(\"Login Identity product_status.balance_history.status is SUCCESS or WARNING\", function() {","            pm.expect(jsonData.login_identity.product_status.balance_history.status).to.be.oneOf([\"SUCCESS\", \"WARNING\"])","        })    ","    }","    else {","        //pm.test(\"Login Identity product_status.balance_history.status is NOT_SUPPORTED\", function() {","            //pm.expect(jsonData.login_identity.product_status.balance_history.status).to.eql(\"NOT_SUPPORTED\")","        pm.test(\"Login Identity product_status.balance_history.status is NOT_SUPPORTED or WARNING\", function() {","            pm.expect(jsonData.login_identity.product_status.balance_history.status).to.be.oneOf([\"NOT_SUPPORTED\", \"WARNING\"]) //TEMPORARY: CHECK FOR WARNING SINCE API SOMETIMES RETURNS \"WARNING: PARTIALLY RETRIEVED\" FOR NOT SUPPORTED CASES","        })","    };","","    if (pm.environment.get(\"is_identity_enabled\") === \"true\") {","        pm.test(\"Login Identity product_status.identity.status is SUCCESS\", function() {","            pm.expect(jsonData.login_identity.product_status.identity.status).to.be.oneOf([\"SUCCESS\"])","        })    ","    }","    else {","        pm.test(\"Login Identity product_status.identity.status is NOT_SUPPORTED\", function() {","            pm.expect(jsonData.login_identity.product_status.identity.status).to.eql(\"NOT_SUPPORTED\")","        })","    };","","    if (pm.environment.get(\"is_statements_enabled\") === \"true\") {","        pm.test(\"Login Identity product_status.statements.status is SUCCESS\", function() {","            pm.expect(jsonData.login_identity.product_status.statements.status).to.eql(\"SUCCESS\")","        })    ","    }","    else {","        pm.test(\"Login Identity product_status.statements.status is NOT_SUPPORTED\", function() {","            pm.expect(jsonData.login_identity.product_status.statements.status).to.eql(\"NOT_SUPPORTED\")","        })","    };","","    if (pm.environment.get(\"is_historical_transactions_enabled\") === \"true\") {","        pm.test(\"Login Identity product_status.historical_transactions.status is SUCCESS, WARNING\", function() {","            pm.expect(jsonData.login_identity.product_status.historical_transactions.status).to.be.oneOf([\"SUCCESS\", \"WARNING\"])","        })    ","    }","    else {","        pm.test(\"Login Identity product_status.historical_transactions.status is NOT_SUPPORTED\", function() {","            pm.expect(jsonData.login_identity.product_status.historical_transactions.status).to.eql(\"NOT_SUPPORTED\")","        })","    }","","};","//[NO_DOC] ADDITIONAL DATA RETRIEVAL TESTS - END"],"type":"text/javascript"}}],"id":"d786ba7a-ace1-44e5-9859-4399d7e58762","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"GET","header":[{"description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","key":"X-Request-Id","type":"text","value":"1777634238"}],"url":"https://api.prod.finverse.net/login_identity","description":"<p>Retrieve information about a Login Identity, including its authentication and data retrieval status. Does not contain any sensitive user data.</p>\n<p>Note: a Login Identity represents a unique financial institution authenticated account linked by the end-user. An end-user who links multiple Institutions (or multiple authenticated accounts at the same Institution), will have a distinct Login Identity for each linked account.</p>\n<p><strong>Authorization:</strong> <code>login_identity_token</code></p>\n<h1 id=\"response-fields\">Response fields</h1>\n<h3 id=\"institution\">institution</h3>\n<p>Summary Institutions object. See <code>GET /institutions</code> for object details.</p>\n<h3 id=\"login_identity\">login_identity</h3>\n<p>Full <code>login_identity</code> object, containing metadata and status information.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>authentication_status</td>\n<td>object</td>\n<td>See below</td>\n</tr>\n<tr>\n<td>billing_details</td>\n<td>object</td>\n<td>Reserved for future use</td>\n</tr>\n<tr>\n<td>created_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp when the Login Identity was first created (via <code>POST /link/token</code> request to generate a Link Token)</td>\n</tr>\n<tr>\n<td>customer_app_id</td>\n<td>string (ULID)</td>\n<td>Finverse Customer ID for this Customer</td>\n</tr>\n<tr>\n<td>error</td>\n<td>object, nullable</td>\n<td>See below. Empty if no error has occurred.</td>\n</tr>\n<tr>\n<td>first_success</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the first successful authentication of the Login Identity</td>\n</tr>\n<tr>\n<td>institution_id</td>\n<td>string</td>\n<td>Finverse Institution ID for this Login Identity</td>\n</tr>\n<tr>\n<td>last_success</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last successful authentication or data retrieval of the Login Identity</td>\n</tr>\n<tr>\n<td>login_identity_id</td>\n<td>string (ULID)</td>\n<td>Finverse Login Identity ID for this Login Identity. Always unique. Linking the same account at the same institution twice will result in two Login Identities with different IDs (use Refresh/Relink methods to refresh data for a Login Identity without updating the ID).</td>\n</tr>\n<tr>\n<td>login_methods_available</td>\n<td>object</td>\n<td>Reserved for future use</td>\n</tr>\n<tr>\n<td>permissions</td>\n<td>null</td>\n<td>Reserved for future use</td>\n</tr>\n<tr>\n<td>permissions_expiry_date</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Reserved for future use</td>\n</tr>\n<tr>\n<td>permissions_grant_date</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Reserved for future use</td>\n</tr>\n<tr>\n<td>product_status</td>\n<td>object</td>\n<td>See below.</td>\n</tr>\n<tr>\n<td>session_status</td>\n<td>string</td>\n<td>Status of the most recent Institution linking session. Possible values: <code>IN_PROGRESS</code>, <code>COMPLETED</code>, <code>UNLINKED</code>.  <br />\"COMPLETED\" means data retrieval for all products has finished (can be successfully or with errors); this field can be used to determine when to fetch data from Finverse's product endpoints (if not using <code>product_status</code>, or webhooks instead).</td>\n</tr>\n<tr>\n<td>status</td>\n<td>string</td>\n<td>Summary status of the Login Identity. Possible values: <code>LINKING</code>, <code>AUTHENTICATING</code>, <code>DATA_RETRIEVAL_IN_PROGRESS</code>, <code>DATA_AVAILABLE</code>, <code>DATA_RETRIEVAL_COMPLETE</code>, <code>DATA_RETRIEVAL_PARTIALLY_SUCCESSFUL</code>, <code>ERROR</code>, <code>REFRESHING</code>, <code>UNLINKED</code>, <code>UNLINK_SUCCEEDED</code>, <code>UNLINK_FAILED</code>, <code>UNKNOWN</code>. We do not recommend using this field to determine when to fetch data from Finverse's product endpoints (use <code>product_status</code>, <code>session_status</code>, or webhooks instead).</td>\n</tr>\n<tr>\n<td>status_details</td>\n<td>object</td>\n<td>See below</td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last event involving this Login Identity (e.g. authentication, data retrieval, unlinking)</td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>string</td>\n<td>Customer's User ID for this Login Identity, as provided to Finverse during first-time linking (in the <code>POST /link/token</code> request to generate a Link Token). This allows Customers to map Finverse's <code>login_identity_id</code> to Customer's <code>user_id</code> schema. Each <code>user_id</code> can link multiple Login Identities. We recommend that Customers do not include any sensitive data in <code>user_id</code>.</td>\n</tr>\n<tr>\n<td>webhook</td>\n<td>string</td>\n<td>(not yet supported) The URL specified for receiving webhooks for this Login Identity</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"authentication_status\">authentication_status</h4>\n<p>Provides details on the authentication status of the Login Identity.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>last_successful_update</td>\n<td>string, nullable (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last successful authentication of the Login Identity</td>\n</tr>\n<tr>\n<td>last_update</td>\n<td>string, nullable (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last authentication event involving this Login Identity</td>\n</tr>\n<tr>\n<td>status</td>\n<td>string, nullable</td>\n<td>Authentication status. Possible values: <code>LINKING</code>, <code>AUTHENTICATING</code>, <code>AUTHENTICATED</code>, <code>AUTHENTICATE_FAILED</code>, <code>AUTHENTICATION_TEMPORARILY_UNAVAILABLE_FOR_INSTITUTION</code>, <code>AUTHENTICATION_TOO_MANY_ATTEMPTS</code>, <code>UNKNOWN</code></td>\n</tr>\n<tr>\n<td>status_details</td>\n<td>string, nullable</td>\n<td>Additional details on authentication status. Possible values: <code>AUTHENTICATION_STARTED</code>, <code>AUTHENTICATION_OTP_SENT</code>, <code>AUTHENTICATION_OTP_ENTERED</code>, <code>AUTHENTICATED</code>, <code>AUTHENTICATION_FAILED</code>, <code>AUTHENTICATION_TOO_MANY_ATTEMPTS</code>, <code>AUTHENTICATION_TEMPORARILY_UNAVAILABLE_FOR_INSTITUTION</code></td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"error\">error</h4>\n<p>Provides additional details on any error. Empty if no error has occurred.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td></td>\n<td></td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"product_status\">product_status</h4>\n<p>Provides details on the data retrieval status of the Login Identity, broken down by Finverse Products.</p>\n<p>We recommend using this field to determine when to fetch data from Finverse's product endpoints (if not using webhooks).</p>\n<p>Products: <code>accounts</code>, <code>account_numbers</code>, <code>balance_history</code>, <code>historical_transactions</code>, <code>identity</code>, <code>income_estimation</code>,<code>online_transactions</code>, <code>statements</code>.</p>\n<p>Note: Requesting <code>GET /transactions</code> fetches both <code>online_transactions</code> and <code>historical_transactions</code> (if available). Online transactions refer to transaction records retrieved directly from the institution (sometimes covering only a limited time-period); historical transactions refer to additional records which Finverse extracts from <code>statements</code>.</p>\n<p><code>product_status</code> contains a list of Products, each returning the following status object. Each Product will only be listed once data retrieval has started for the Product.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>last_successful_update</td>\n<td>string, nullable (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last successful update of the Product</td>\n</tr>\n<tr>\n<td>last_update</td>\n<td>string</td>\n<td>Timestamp of the last status event involving the Product</td>\n</tr>\n<tr>\n<td>status</td>\n<td>string, nullable</td>\n<td>Status of the Product. See below. Possible values: <code>IN_PROGRESS</code>, <code>SUCCESS</code>, <code>WARNING</code>, <code>ERROR</code>, <code>NOT_SUPPORTED</code>, <code>NOT_AVAILABLE</code>, <code>TEMPORARILY_UNAVAILABLE_FOR_INSTITUTION</code>,<code>UNKNOWN</code></td>\n</tr>\n<tr>\n<td>status_details</td>\n<td>string, nullable</td>\n<td>Additional details on the status of the Product. See documentation on Webhooks (Data webhook events) for explanations of status meanings.  <br />  <br />Possible values: <code>[PRODUCT]_RETRIEVAL_STARTED</code>, <code>[PRODUCT]_RETRIEVED</code>, <code>[PRODUCT]_PARTIALLY_RETRIEVED</code>, <code>[PRODUCT]_RETRIEVAL_FAILED</code>, <code>[PRODUCT]_NOT_FOUND</code>, <code>[PRODUCT]_NOT_SUPPORTED</code>, <code>[PRODUCT]_TEMPORARILY_UNAVAILABLE_FOR_INSTITUTION</code>, <code>[PRODUCT]_COMPLETED</code>,<code>[PRODUCT]_PARTIALLY_COMPLETED</code>, <code>[PRODUCT]_FAILED</code></td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"refresh\">Refresh</h4>\n<p>Provides details on the ability to refresh data for a Login Identity (i.e. retrieve new data from the institution without any additional user action). Will only be returned if user consented to automated data refreshes.</p>\n<p>Refer to section <code>12 - Data Refresh &amp; Relinking</code> for additional guidance on refresh &amp; relinking.</p>\n<p>View More</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>credentials_stored</td>\n<td>boolean</td>\n<td>Indicates whether Finverse has stored user credentials (only with user consent).</td>\n</tr>\n<tr>\n<td>refresh_allowed</td>\n<td>boolean</td>\n<td>Indicates whether a refresh request is allowed. Refresh is generally allowed if credentials have been stored and no 2FA is expected for this login identity or institution.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"status_details\">status_details</h4>\n<p>Provides details on the most recent event involving this Login Identity (e.g. authentication, data retrieval, unlinking). See <code>GET /login_identity/{login_identity_id}/history</code> to request the full events list involving a Login Identity.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>event_date</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>See <code>GET /login_identity/{login_identity_id}/history</code> for field details</td>\n</tr>\n<tr>\n<td>event_name</td>\n<td>string</td>\n<td>Same as above</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["login_identity"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"fdf15f8d-1c84-43c2-aae3-35c6089aa62a","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","type":"text","value":"setup_on_developer_portal-1777634238"}],"url":"https://api.prod.finverse.net/login_identity"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-a8d93586978e0e1f352e1b5864da0361-074768574b5b346e-01"},{"key":"vary","value":"Origin"},{"key":"x-cloud-trace-context","value":"a8d93586978e0e1f352e1b5864da0361/524502605747663982;o=1"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Tue, 09 Feb 2021 03:37:44 GMT"},{"key":"content-length","value":"802"},{"key":"x-envoy-upstream-service-time","value":"40"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"institution\": {\n        \"countries\": [\n            \"HKG\",\n            \"SGP\",\n            \"PHL\"\n        ],\n        \"institution_id\": \"testbank\",\n        \"institution_name\": \"TestBank HK\",\n        \"portal_name\": \"Test Bank Personal Account\"\n    },\n    \"login_identity\": {\n        \"authentication_id\": \"0\",\n        \"authentication_status\": {\n            \"last_successful_update\": \"2021-12-03T02:08:23.087Z\",\n            \"last_update\": \"2021-12-03T02:08:23.087Z\",\n            \"status\": \"AUTHENTICATED\",\n            \"status_details\": \"AUTHENTICATED\"\n        },\n        \"billing_details\": {\n            \"billed_products\": null\n        },\n        \"created_at\": \"2021-12-03T02:07:58.103Z\",\n        \"customer_app_id\": \"setup_on_developer_portal\",\n        \"error\": {},\n        \"first_success\": \"2021-12-03T02:07:58.103Z\",\n        \"institution_id\": \"testbank\",\n        \"last_session_id\": \"01FZDHPQ5NZSMBEZ2RB6J5PQC3\",\n        \"last_success\": \"2021-12-03T02:08:23.034Z\",\n        \"linking_attempt_id\": \"0\",\n        \"login_identity_id\": \"01FNZ0RP2MWD0SNFBXT8VJ65PE\",\n        \"login_methods_available\": {},\n        \"permissions\": null,\n        \"permissions_expiry_date\": \"2021-12-03T02:07:58.103Z\",\n        \"permissions_grant_date\": \"2021-12-03T02:07:58.103Z\",\n        \"product_status\": {\n            \"account_numbers\": {\n                \"last_successful_update\": \"2021-12-03T02:08:25.189Z\",\n                \"last_update\": \"2021-12-03T02:08:25.189Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"ACCOUNT_NUMBERS_RETRIEVED\"\n            },\n            \"accounts\": {\n                \"last_successful_update\": \"2021-12-03T02:08:25.050Z\",\n                \"last_update\": \"2021-12-03T02:08:25.050Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"ACCOUNTS_RETRIEVED\"\n            },\n            \"balance_history\": {\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"BALANCE_HISTORY_RETRIEVED\"\n            },\n            \"historical_transactions\": {\n                \"last_update\": \"2021-12-03T02:08:33.698Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"HISTORICAL_TRANSACTIONS_RETRIEVED\"\n            },\n            \"identity\": {\n                \"last_successful_update\": \"2021-12-03T02:08:27.898Z\",\n                \"last_update\": \"2021-12-03T02:08:27.898Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"IDENTITY_RETRIEVED\"\n            },\n            \"online_transactions\": {\n                \"last_successful_update\": \"2021-12-03T02:08:26.790Z\",\n                \"last_update\": \"2021-12-03T02:08:26.790Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"ONLINE_TRANSACTIONS_RETRIEVED\"\n            },\n            \"statements\": {\n                \"last_successful_update\": \"2021-12-03T02:08:29.092Z\",\n                \"last_update\": \"2021-12-03T02:08:29.092Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"STATEMENTS_RETRIEVED\"\n            }\n        },\n        \"refresh\": {\n            \"credentials_stored\": true,\n            \"refresh_allowed\": true\n        },\n        \"session_status\": \"COMPLETED\",\n        \"status\": \"DATA_RETRIEVAL_COMPLETE\",\n        \"status_details\": {\n            \"event_date\": \"2021-12-03T02:08:33.794Z\",\n            \"event_name\": \"BALANCE_HISTORY_RETRIEVED\"\n        },\n        \"updated_at\": \"2021-12-03T02:08:33.811Z\",\n        \"user_id\": \"01FN8TJ92X38QF7B4N5HRP8X3K\",\n        \"webhook\": \"https://example.com/callback\"\n    }\n}"},{"id":"bdfc2409-5d8d-4f82-968c-42926c037f9a","name":"Failed data retrieval","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"url":"https://api.prod.finverse.net/login_identity"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-a8d93586978e0e1f352e1b5864da0361-074768574b5b346e-01"},{"key":"vary","value":"Origin"},{"key":"x-cloud-trace-context","value":"a8d93586978e0e1f352e1b5864da0361/524502605747663982;o=1"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Tue, 09 Feb 2021 03:37:44 GMT"},{"key":"content-length","value":"802"},{"key":"x-envoy-upstream-service-time","value":"40"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"institution\":\n    {\n        \"countries\":\n        [\n            \"HKG\",\n            \"IDN\",\n            \"MYS\",\n            \"PHL\",\n            \"SGP\",\n            \"THA\",\n            \"VNM\"\n        ],\n        \"institution_id\": \"testbank\",\n        \"institution_name\": \"Testbank\",\n        \"portal_name\": \"Testbank Online Banking\"\n    },\n    \"login_identity\":\n    {\n        \"authentication_id\": \"0\",\n        \"authentication_status\":\n        {\n            \"last_successful_update\": \"2025-04-01T09:42:29.367Z\",\n            \"last_update\": \"2025-04-01T09:42:29.367Z\",\n            \"status\": \"AUTHENTICATED\",\n            \"status_details\": \"AUTHENTICATED\"\n        },\n        \"billing_details\":\n        {\n            \"billed_products\": null\n        },\n        \"created_at\": \"2025-04-01T09:42:25.580Z\",\n        \"customer_app_id\": \"01F78EFQVCSKYVV154ZWBTAZ5D\",\n        \"error\":\n        {\n            \"code\": 11007,\n            \"details\": \"An error occurred while retrieving data from the institution. Please try again in a few days.\",\n            \"message\": \"Data retrieval error\",\n            \"type\": \"DATA_RETRIEVE_FAILED\"\n        },\n        \"first_success\": \"2025-04-01T09:42:25.523Z\",\n        \"institution_id\": \"testbank\",\n        \"last_session_id\": \"01JQRBP3FKQ7T2CQVTCPM8Y83Y\",\n        \"last_success\": \"2025-04-01T09:42:37.853Z\",\n        \"linking_attempt_id\": \"0\",\n        \"login_identity_id\": \"01JQRBP3FKQ7T2CQVTCMG4ASNG\",\n        \"login_methods_available\":\n        {},\n        \"permissions\": null,\n        \"permissions_expiry_date\": \"2025-04-01T09:42:25.523Z\",\n        \"permissions_grant_date\": \"2025-04-01T09:42:25.523Z\",\n        \"product_status\":\n        {\n            \"account_numbers\":\n            {\n                \"last_successful_update\": \"2025-04-01T09:42:30.022Z\",\n                \"last_update\": \"2025-04-01T09:42:30.022Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"ACCOUNT_NUMBERS_RETRIEVED\"\n            },\n            \"accounts\":\n            {\n                \"last_successful_update\": \"2025-04-01T09:42:29.959Z\",\n                \"last_update\": \"2025-04-01T09:42:29.959Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"ACCOUNTS_RETRIEVED\"\n            },\n            \"balance_history\":\n            {\n                \"last_update\": \"2025-04-01T09:42:37.604Z\",\n                \"status\": \"WARNING\",\n                \"status_details\": \"BALANCE_HISTORY_PARTIALLY_RETRIEVED\"\n            },\n            \"card_details\":\n            {\n                \"last_update\": \"2025-04-01T09:42:34.793Z\",\n                \"status\": \"IN_PROGRESS\",\n                \"status_details\": \"CREDIT_CARD_DETAILS_RETRIEVAL_STARTED\"\n            },\n            \"historical_transactions\":\n            {\n                \"last_update\": \"2025-04-01T09:42:37.684Z\",\n                \"status\": \"NOT_AVAILABLE\",\n                \"status_details\": \"STATEMENTS_NOT_AVAILABLE\"\n            },\n            \"identity\":\n            {\n                \"last_update\": \"2025-04-01T09:42:35.257Z\",\n                \"status\": \"ERROR\",\n                \"status_details\": \"IDENTITY_RETRIEVAL_FAILED\"\n            },\n            \"income_estimation\":\n            {\n                \"last_update\": \"2025-04-01T09:42:37.871Z\",\n                \"status\": \"WARNING\",\n                \"status_details\": \"INCOME_ESTIMATION_NOT_FOUND\"\n            },\n            \"online_transactions\":\n            {\n                \"last_update\": \"2025-04-01T09:42:34.749Z\",\n                \"status\": \"WARNING\",\n                \"status_details\": \"ONLINE_TRANSACTIONS_NOT_FOUND\"\n            },\n            \"statements\":\n            {\n                \"last_update\": \"2025-04-01T09:42:37.712Z\",\n                \"status\": \"WARNING\",\n                \"status_details\": \"STATEMENTS_NOT_FOUND\"\n            }\n        },\n        \"refresh\":\n        {\n            \"credentials_stored\": false,\n            \"refresh_allowed\": false\n        },\n        \"session_status\": \"COMPLETED\",\n        \"status\": \"DATA_RETRIEVAL_PARTIALLY_SUCCESSFUL\",\n        \"status_details\":\n        {\n            \"event_date\": \"2025-04-01T09:42:37.871Z\",\n            \"event_name\": \"INCOME_ESTIMATION_NOT_FOUND\"\n        },\n        \"updated_at\": \"2025-04-01T09:42:37.875Z\",\n        \"user_id\": \"01FQKAATDH2C25P9C3MPTRT5Q7\",\n        \"webhook\": \"https://example.com/callback\"\n    }\n}"}],"_postman_id":"d786ba7a-ace1-44e5-9859-4399d7e58762"},{"name":"/login_identity/{login_identity_id}","event":[{"listen":"test","script":{"id":"9fbdfed5-924c-4ecd-8397-20dac9f667b6","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Login Identity or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"login_identity\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"institution\": {\"type\":\"object\"},","            \"login_identity\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"authentication_id\": {\"type\":\"string\"},","                    \"authentication_status\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"last_successful_update\": {\"type\":\"string\"},","                            \"last_update\": {\"type\":\"string\"},","                            \"status\": {\"type\":\"string\"},","                            \"status_details\": {\"type\":\"string\"}","                        },","                        \"required\" : [","                            \"last_successful_update\",","                            \"last_update\",","                            \"status\",","                            \"status_details\"       ","                        ]","                    },","                    \"billing_details\": {\"type\":\"object\"},","                    \"created_at\": {\"type\":\"string\"},","                    \"customer_app_id\": {\"type\":\"string\"},","                    \"error\": {\"type\":\"object\"},","                    \"first_success\": {\"type\":\"string\"},","                    \"institution_id\": {\"type\":\"string\"},","                    \"last_session_id\": {\"type\":\"string\"},","                    \"last_success\": {\"type\":\"string\"},","                    \"linking_attempt_id\": {\"type\":\"string\"},","                    \"login_identity_id\": {\"type\":\"string\"},","                    \"login_methods_available\": {\"type\":\"object\"},","                    \"permissions\": {\"type\":\"null\"},","                    \"permissions_expiry_date\": {\"type\":\"string\"},","                    \"permissions_grant_date\": {\"type\":\"string\"},","                    \"product_status\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"accounts\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                            \"account_numbers\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                            \"balance_history\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                            \"card_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                            \"historical_transactions\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },","                           \"identity\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },","                            \"income_estimation\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                            \"online_transactions\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },","                            \"statements\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                        },","                        \"required\" : [","                            \"accounts\",","                            \"online_transactions\"","                        //    \"account_numbers\",","                        //    \"card_details\",","                        //.   \"historical_transactions\",","                        //    \"identity\",","                        //    \"statements\",","                        ]","                    },","                    \"refresh\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"credentials_stored\": {\"type\":\"boolean\"},","                            \"refresh_allowed\": {\"type\":\"boolean\"}","                        },","                        \"required\" : [","                            \"credentials_stored\",","                            \"refresh_allowed\"","                        ]","                    },","                    \"session_status\": {\"type\":\"string\"},","                    \"status\": {\"type\":\"string\"},","                    \"status_details\": {\"type\":\"object\"},","                    \"updated_at\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                    \"webhook\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"authentication_id\",","                    \"authentication_status\",","                    \"billing_details\",","                    \"created_at\",","                    \"customer_app_id\",","                    \"error\",","                    \"first_success\",","                    \"institution_id\",","                    \"last_session_id\",","                    \"last_success\",","                    \"linking_attempt_id\",","                    \"login_identity_id\",","                    \"login_methods_available\",","                    \"permissions\",","                    \"permissions_expiry_date\",","                    \"permissions_grant_date\",","                    \"product_status\",","                    \"refresh\",","                    \"session_status\",","                    \"status\",","                    \"status_details\",","                    \"updated_at\",","                    \"user_id\",","                    \"webhook\"                ","                ]","            }","        },","        \"required\" : [","            \"institution\",","            \"login_identity\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","","//CUSTOM TESTS - START","//Authentication status","pm.test(\"Login Identity authentication_status.status is AUTHENTICATED\", function() {","    pm.expect(jsonData.login_identity.authentication_status.status).to.eql(\"AUTHENTICATED\")","});","//CUSTOM TESTS - END"],"type":"text/javascript"}}],"id":"179ae012-33f7-4c53-9f50-04ab61b20eb3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","key":"X-Request-Id","type":"text","value":"1777634238"}],"url":"https://api.prod.finverse.net/login_identity/{{login_identity_id}}","description":"<p>Retrieve a Login Identity (using a specific <code>login_identity_id</code>). Does not contain any sensitive user data.</p>\n<p>This is an alternative to <code>GET /login_identity</code> for cases where the <code>login_identity_token</code> is not available, but the <code>login_identity_id</code> is known.</p>\n<p><strong>Authorization:</strong> <code>customer_token</code></p>\n","urlObject":{"path":["login_identity","{{login_identity_id}}"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"c489f9db-55ea-42d4-adf3-b917a3b330f6","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","type":"text","value":"1777634238"}],"url":"https://api.prod.finverse.net/login_identity/{{login_identity_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-a52679d7fc774ce4d055ebac985ca485-d0657cd32fc6b8ce-01"},{"key":"vary","value":"Origin"},{"key":"x-cloud-trace-context","value":"a52679d7fc774ce4d055ebac985ca485/15016545779018283214;o=1"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Tue, 09 Feb 2021 03:39:02 GMT"},{"key":"content-length","value":"802"},{"key":"x-envoy-upstream-service-time","value":"42"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"institution\": {\n        \"countries\": [\n            \"HKG\",\n            \"SGP\",\n            \"PHL\"\n        ],\n        \"institution_id\": \"testbank\",\n        \"institution_name\": \"TestBank HK\",\n        \"portal_name\": \"Test Bank Personal Account\"\n    },\n    \"login_identity\": {\n        \"authentication_id\": \"0\",\n        \"authentication_status\": {\n            \"last_successful_update\": \"2021-12-03T02:08:23.087Z\",\n            \"last_update\": \"2021-12-03T02:08:23.087Z\",\n            \"status\": \"AUTHENTICATED\",\n            \"status_details\": \"AUTHENTICATED\"\n        },\n        \"billing_details\": {\n            \"billed_products\": null\n        },\n        \"created_at\": \"2021-12-03T02:07:58.103Z\",\n        \"customer_app_id\": \"setup_on_developer_portal\",\n        \"error\": {},\n        \"first_success\": \"2021-12-03T02:07:58.103Z\",\n        \"institution_id\": \"testbank\",\n        \"last_session_id\": \"01FZDHPQ5NZSMBEZ2RB6J5PQC3\",\n        \"last_success\": \"2021-12-03T02:08:23.034Z\",\n        \"linking_attempt_id\": \"0\",\n        \"login_identity_id\": \"01FNZ0RP2MWD0SNFBXT8VJ65PE\",\n        \"login_methods_available\": {},\n        \"permissions\": null,\n        \"permissions_expiry_date\": \"2021-12-03T02:07:58.103Z\",\n        \"permissions_grant_date\": \"2021-12-03T02:07:58.103Z\",\n        \"product_status\": {\n            \"account_numbers\": {\n                \"last_successful_update\": \"2021-12-03T02:08:25.189Z\",\n                \"last_update\": \"2021-12-03T02:08:25.189Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"ACCOUNT_NUMBERS_RETRIEVED\"\n            },\n            \"accounts\": {\n                \"last_successful_update\": \"2021-12-03T02:08:25.050Z\",\n                \"last_update\": \"2021-12-03T02:08:25.050Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"ACCOUNTS_RETRIEVED\"\n            },\n            \"balance_history\": {\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"BALANCE_HISTORY_RETRIEVED\"\n            },\n            \"historical_transactions\": {\n                \"last_update\": \"2021-12-03T02:08:33.698Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"HISTORICAL_TRANSACTIONS_RETRIEVED\"\n            },\n            \"identity\": {\n                \"last_successful_update\": \"2021-12-03T02:08:27.898Z\",\n                \"last_update\": \"2021-12-03T02:08:27.898Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"IDENTITY_RETRIEVED\"\n            },\n            \"online_transactions\": {\n                \"last_successful_update\": \"2021-12-03T02:08:26.790Z\",\n                \"last_update\": \"2021-12-03T02:08:26.790Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"ONLINE_TRANSACTIONS_RETRIEVED\"\n            },\n            \"statements\": {\n                \"last_successful_update\": \"2021-12-03T02:08:29.092Z\",\n                \"last_update\": \"2021-12-03T02:08:29.092Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"STATEMENTS_RETRIEVED\"\n            }\n        },\n        \"refresh\": {\n            \"credentials_stored\": true,\n            \"refresh_allowed\": true\n        },\n        \"session_status\": \"COMPLETED\",\n        \"status\": \"DATA_RETRIEVAL_COMPLETE\",\n        \"status_details\": {\n            \"event_date\": \"2021-12-03T02:08:33.794Z\",\n            \"event_name\": \"BALANCE_HISTORY_RETRIEVED\"\n        },\n        \"updated_at\": \"2021-12-03T02:08:33.811Z\",\n        \"user_id\": \"01FN8TJ92X38QF7B4N5HRP8X3K\",\n        \"webhook\": \"https://example.com/callback\"\n    }\n}"},{"id":"8f2640ca-0b72-44dc-b096-3cbc5b2bb918","name":"Error (Login Identity not found)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","type":"text","value":"1777634238"}],"url":"https://api.prod.finverse.net/login_identity/{{login_identity_id}}"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Fri, 23 Sep 2022 11:47:27 GMT"},{"key":"Content-Length","value":"255"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40001,\n        \"error_code\": \"LOGIN_IDENTITY_NOT_FOUND\",\n        \"message\": \"login_identity_id cannot be found. Resource does not exist, has been deleted, or is no longer accessible.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"179ae012-33f7-4c53-9f50-04ab61b20eb3"},{"name":"/login_identity/{login_identity_id}/history","event":[{"listen":"test","script":{"id":"24475a6e-aee7-48c6-9f77-03fdc28fcd76","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.status_history) {","    console.log(\"status_history array:\", jsonData.status_history);","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Status History or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"status_history\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\": \"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"login_identity\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"authentication_id\": {\"type\":\"string\"},","                    \"authentication_status\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"last_successful_update\": {\"type\":\"string\"},","                            \"last_update\": {\"type\":\"string\"},","                            \"status\": {\"type\":\"string\"},","                            \"status_details\": {\"type\":\"string\"}","                        },","                        \"required\" : [","                            \"last_successful_update\",","                            \"last_update\",","                            \"status\",","                            \"status_details\"       ","                        ]","                    },","                    \"billing_details\": {\"type\":\"object\"},","                    \"created_at\": {\"type\":\"string\"},","                    \"customer_app_id\": {\"type\":\"string\"},","                    \"error\": {\"type\":\"object\"},","                    \"first_success\": {\"type\":\"string\"},","                    \"institution_id\": {\"type\":\"string\"},","                    \"last_session_id\": {\"type\":\"string\"},","                    \"last_success\": {\"type\":\"string\"},","                    \"linking_attempt_id\": {\"type\":\"string\"},","                    \"login_identity_id\": {\"type\":\"string\"},","                    \"login_methods_available\": {\"type\":\"object\"},","                    \"permissions\": {\"type\":\"null\"},","                    \"permissions_expiry_date\": {\"type\":\"string\"},","                    \"permissions_grant_date\": {\"type\":\"string\"},","                    \"product_status\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"accounts\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                            \"account_numbers\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                            \"balance_history\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                            \"card_details\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                            \"historical_transactions\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },","                           \"identity\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },","                            \"income_estimation\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                            \"online_transactions\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },","                            \"statements\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"last_successful_update\": {\"type\":\"string\"},","                                    \"last_update\": {\"type\":\"string\"},","                                    \"status\": {\"type\":\"string\"},","                                    \"status_details\": {\"type\":\"string\"}","                             //     ,","                             //   \"required\" : [","                             //       \"last_successful_update\",","                             //       \"last_update\",","                             //       \"status\",","                             //       \"status_details\"","                                },","                            },  ","                        },","                        \"required\" : [","                            \"accounts\",","                            \"online_transactions\"","                        //    \"account_numbers\",","                        //    \"card_details\",","                        //.   \"historical_transactions\",","                        //    \"identity\",","                        //    \"statements\",","                        ]","                    },","                    \"refresh\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"credentials_stored\": {\"type\":\"boolean\"},","                            \"refresh_allowed\": {\"type\":\"boolean\"}","                        },","                        \"required\" : [","                            \"credentials_stored\",","                            \"refresh_allowed\"","                        ]","                    },","                    \"session_status\": {\"type\":\"string\"},","                    \"status\": {\"type\":\"string\"},","                    \"status_details\": {\"type\":\"object\"},","                    \"updated_at\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                    \"webhook\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"authentication_id\",","                    \"authentication_status\",","                    \"billing_details\",","                    \"created_at\",","                    \"customer_app_id\",","                    \"error\",","                    \"first_success\",","                    \"institution_id\",","                    \"last_session_id\",","                    \"last_success\",","                    \"linking_attempt_id\",","                    \"login_identity_id\",","                    \"login_methods_available\",","                    \"permissions\",","                    \"permissions_expiry_date\",","                    \"permissions_grant_date\",","                    \"product_status\",","                    \"refresh\",","                    \"session_status\",","                    \"status\",","                    \"status_details\",","                    \"updated_at\",","                    \"user_id\",","                    \"webhook\"                ","                ]","            },","            \"status_history\": {","                \"type\": \"array\",","                \"items\": {","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"event_date\": { \"type\": \"string\" },","                        \"event_name\": { \"type\": \"string\" }","                    },","                    \"required\": [","                        \"event_date\",","                        \"event_name\"","                    ]","                }","            }","        },","        \"required\": [","            \"login_identity\",","            \"status_history\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function () {","    pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - START"],"type":"text/javascript"}}],"id":"4fa23a59-fa5a-43cd-8bef-31d3dd3961aa","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","key":"X-Request-Id","type":"text","value":"1777634238"}],"url":"https://api.prod.finverse.net/login_identity/{{login_identity_id}}/history","description":"<p>Retrieve status history for a Login Identity (using a specific <code>login_identity_id</code>).</p>\n<p>This is primarily useful to debug Login Identity data retrieval issues, and to evaluate authentication &amp; data retrieval speeds.</p>\n<p><strong>Authorization:</strong> <code>customer_token</code></p>\n","urlObject":{"path":["login_identity","{{login_identity_id}}","history"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"49bde325-e414-4bae-acce-097e88170902","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","type":"text","value":"1777634238"}],"url":"https://api.prod.finverse.net/login_identity/{{login_identity_id}}/history"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-8bb6e6f39dd5e6d23be80eb700ff0d60-e5dbfbc8afc933ab-01"},{"key":"vary","value":"Origin"},{"key":"x-cloud-trace-context","value":"8bb6e6f39dd5e6d23be80eb700ff0d60/16563108893946360747;o=1"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Tue, 02 Mar 2021 06:10:41 GMT"},{"key":"content-length","value":"1063"},{"key":"x-envoy-upstream-service-time","value":"22"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"login_identity\": {\n        \"authentication_id\": \"0\",\n        \"authentication_status\": {\n            \"last_successful_update\": \"2021-12-03T02:08:23.087Z\",\n            \"last_update\": \"2021-12-03T02:08:23.087Z\",\n            \"status\": \"AUTHENTICATED\",\n            \"status_details\": \"AUTHENTICATED\"\n        },\n        \"billing_details\": {\n            \"billed_products\": null\n        },\n        \"created_at\": \"2021-12-03T02:07:58.103Z\",\n        \"customer_app_id\": \"setup_on_developer_portal\",\n        \"error\": {},\n        \"first_success\": \"2021-12-03T02:07:58.103Z\",\n        \"institution_id\": \"testbank\",\n        \"last_session_id\": \"01FZDHPQ5NZSMBEZ2RB6J5PQC3\",\n        \"last_success\": \"2021-12-03T02:08:23.034Z\",\n        \"linking_attempt_id\": \"0\",\n        \"login_identity_id\": \"01FNZ0RP2MWD0SNFBXT8VJ65PE\",\n        \"login_methods_available\": {},\n        \"permissions\": null,\n        \"permissions_expiry_date\": \"2021-12-03T02:07:58.103Z\",\n        \"permissions_grant_date\": \"2021-12-03T02:07:58.103Z\",\n        \"product_status\": {\n            \"account_numbers\": {\n                \"last_successful_update\": \"2021-12-03T02:08:25.189Z\",\n                \"last_update\": \"2021-12-03T02:08:25.189Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"ACCOUNT_NUMBERS_RETRIEVED\"\n            },\n            \"accounts\": {\n                \"last_successful_update\": \"2021-12-03T02:08:25.050Z\",\n                \"last_update\": \"2021-12-03T02:08:25.050Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"ACCOUNTS_RETRIEVED\"\n            },\n            \"balance_history\": {\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"BALANCE_HISTORY_RETRIEVED\"\n            },\n            \"historical_transactions\": {\n                \"last_update\": \"2021-12-03T02:08:33.698Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"HISTORICAL_TRANSACTIONS_RETRIEVED\"\n            },\n            \"identity\": {\n                \"last_successful_update\": \"2021-12-03T02:08:27.898Z\",\n                \"last_update\": \"2021-12-03T02:08:27.898Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"IDENTITY_RETRIEVED\"\n            },\n            \"online_transactions\": {\n                \"last_successful_update\": \"2021-12-03T02:08:26.790Z\",\n                \"last_update\": \"2021-12-03T02:08:26.790Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"ONLINE_TRANSACTIONS_RETRIEVED\"\n            },\n            \"statements\": {\n                \"last_successful_update\": \"2021-12-03T02:08:29.092Z\",\n                \"last_update\": \"2021-12-03T02:08:29.092Z\",\n                \"status\": \"SUCCESS\",\n                \"status_details\": \"STATEMENTS_RETRIEVED\"\n            }\n        },\n        \"refresh\": {\n            \"credentials_stored\": true,\n            \"refresh_allowed\": true\n        },\n        \"session_status\": \"COMPLETED\",\n        \"status\": \"DATA_RETRIEVAL_COMPLETE\",\n        \"status_details\": {\n            \"event_date\": \"2021-12-03T02:08:33.794Z\",\n            \"event_name\": \"BALANCE_HISTORY_RETRIEVED\"\n        },\n        \"updated_at\": \"2021-12-03T02:08:33.811Z\",\n        \"user_id\": \"01FN8TJ92X38QF7B4N5HRP8X3K\",\n        \"webhook\": \"https://example.com/callback\"\n    },\n    \"status_history\": [\n        {\n            \"event_name\": \"LINK_INITIALIZED\",\n            \"event_time\": \"2021-03-02T06:09:43.980Z\"\n        },\n        {\n            \"event_name\": \"AUTHENTICATE_INITIALIZED\",\n            \"event_time\": \"2021-03-02T06:09:50.091Z\"\n        },\n        {\n            \"event_name\": \"AUTHENTICATED\",\n            \"event_time\": \"2021-03-02T06:09:55.391Z\"\n        },\n        {\n            \"event_name\": \"ONLINE_DATA_RETRIEVED\",\n            \"event_time\": \"2021-03-02T06:09:59.619Z\"\n        },\n        {\n            \"event_name\": \"DATA_RETRIEVED\",\n            \"event_time\": \"2021-03-02T06:10:03.133Z\"\n        }\n    ]\n}"}],"_postman_id":"4fa23a59-fa5a-43cd-8bef-31d3dd3961aa"}],"id":"dd817490-f30c-4baa-84ac-9dd665464b30","description":"<p>Note: <code>GET</code> data requests read <em>previously retrieved</em> data from Finverse's database. To request Finverse to retrieve new data from connected institutions, please use the <code>POST</code> requests under \"<strong>Data Refresh</strong>\".</p>\n<h2 id=\"guidance-when-to-fetch-data-from-finverse\">Guidance: When to fetch data from Finverse</h2>\n<p><em>To know when data for a Login Identity is available for fetching, we recommend polling</em> <code>_GET /login_identity_</code> <em>for the Login Identity's status, or integrating with Finverse Webhooks.</em></p>\n<p><em>We do NOT recommend waiting for a fixed length of time after successful authentication to fetch data.</em></p>\n<p>Finverse's data retrieval from the institution usually takes 20-90 seconds, but this can vary significantly by institution and end-user (for example if the end-user has many accounts at the Institution). In rare cases, data retrieval may take up to 5 minutes.</p>\n<p>There are currently four options to determine when data is available for fetching:</p>\n<h3 id=\"1-login-identity-product_status\">(1) Login Identity <code>product_status</code></h3>\n<p><em>Recommended approach.</em></p>\n<p><strong>Pros</strong>: most precise way to know that data for a specific Product is available for fetching.</p>\n<p><strong>Cons</strong>: requires evaluating the <code>status</code> field for each Product in <code>product_status</code> to determine data availability.</p>\n<p><strong>Data retrieval lifecycle:</strong></p>\n<p><code>login_identity.product_status.status</code> values during data retrieval:</p>\n<ul>\n<li><code>IN_PROGRESS</code>: Finverse has started retrieving data for this Product.</li>\n<li><code>SUCCESS</code>: Finverse has finished data retrieval for this Product. Customers can now fetch Product data.</li>\n<li><code>WARNING</code>: Finverse has finished data retrieval but identified data quality issues. This usually corresponds to <code>status_details</code> = <code>[PRODUCT]_PARTIALLY_RETRIEVED</code> or <code>[PRODUCT]_NOT_FOUND</code>. Customers can now fetch Product data, but should be aware that some data may be missing.</li>\n<li><code>ERROR</code>, <code>NOT_SUPPORTED</code>, <code>NOT_AVAILABLE</code>: Data retrieval for this Product was unsuccessful, either due to an error, or the Product not being supported/available for this Institution or end-user. Fetching Product data will likely return an error or empty response.</li>\n</ul>\n<h3 id=\"2-login-identity-session_status\">(2) Login Identity <code>session_status</code></h3>\n<p><em>Basic approach.</em></p>\n<p><strong>Pros</strong>: simplest method to determine data availability; can be convenient for basic implementations.</p>\n<p><strong>Cons</strong>: (i) potentially leads to fetching data too slowly (depending on which Products are needed); (ii) only indicates that the data retrieval session is finished, not whether any data retrieval was actually successful.</p>\n<p><strong>Data retrieval lifecycle:</strong></p>\n<p><code>login_identity.session_status</code> values during data retrieval:</p>\n<ul>\n<li><code>IN_PROGRESS</code>: a Login Identity has been created (by requesting a Link Token). This will remain the session_status during the authentication and data retrieval cycle.</li>\n<li><code>COMPLETED</code>: Finverse has finished connecting and retrieving data from the institution (regardless of whether the connection or data retrieval was successful or not).</li>\n</ul>\n<h3 id=\"3-login-identity-status\">(3) Login Identity <code>status</code></h3>\n<p><em>Alternative approach.</em></p>\n<p><strong>Pros</strong>: simple method to determine data availability; can be convenient for basic implementations.</p>\n<p><strong>Cons</strong>: potentially leads to fetching data too slowly (depending on which Products are needed), or too quickly (some beta Products may continue to process after DATA_RETRIEVAL_COMPLETE).</p>\n<p><strong>Data retrieval lifecycle:</strong></p>\n<p><code>login_identity.status</code> values during data retrieval:</p>\n<ul>\n<li><code>DATA_RETRIEVAL_IN_PROGRESS</code>: Finverse has started retrieving data from the connected institution, after successful authentication (see Login Identity's <code>authentication_status</code>).</li>\n<li><code>DATA_AVAILABLE</code>: Finverse has retrieved data for at least one Product (typically <code>accounts</code>); retrieval for other Products is still in progress. This is the earliest time a Customer can start fetching some data.</li>\n<li><code>DATA_RETRIEVAL_COMPLETE</code> or <code>DATA_RETRIEVAL_PARTIALLY_SUCCESSFUL</code>: Finverse has finished data retrieval for all fully supported Products. <em>We recommend that Customers wait for this status before fetching data</em>. Note: Finverse may still be fetching data for beta Products (e.g. <code>balance_history</code> and <code>historical_transactions</code>); <em>we recommend relying on</em> <code>_product_status_</code> <em>if data from beta Products is needed.</em></li>\n<li><code>ERROR</code>: Finverse has encountered an error retrieving data for at least one Product. Data for other Products may be available, or may still be fetching.</li>\n</ul>\n<h3 id=\"4-webhooks\">(4) Webhooks</h3>\n<p><em>See chapter on Webhooks below.</em></p>\n","event":[{"listen":"prerequest","script":{"id":"7ad3273a-f995-48fd-9aa8-b8314ac66742","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"5e2eb33d-edc4-48b7-96c7-860f5b4e8ee9","type":"text/javascript","exec":[""]}}],"_postman_id":"dd817490-f30c-4baa-84ac-9dd665464b30"},{"name":"03 - Accounts","item":[{"name":"/accounts","event":[{"listen":"test","script":{"id":"2aa72cb5-a758-465e-b2d6-3ba503ea4125","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","//Extract sample account_id","if(jsonData.accounts) {","    if (jsonData.accounts.length >1 ","            && (jsonData.accounts[0].is_parent === true || jsonData.accounts[0].balance.value < 10)","        )","        {pm.environment.set(\"account_id\", jsonData.accounts[1].account_id)}","    else","        {pm.environment.set(\"account_id\", jsonData.accounts[0].account_id)};","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.accounts) {","    console.log(\"Number of accounts found:\", jsonData.accounts.length);","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Accounts or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"accounts\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"accounts\": {","                \"type\":\"array\",","                \"items\": {","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"account_currency\": {\"type\":\"string\"},","                        \"account_holder_name\": {\"type\":\"string\"},","                        \"account_id\": {\"type\":\"string\"},","                        \"account_name\": {\"type\":\"string\"},","                        \"account_nickname\": {\"type\": \"string\"},","                        \"account_number_masked\": {\"type\": \"string\"},","                        \"account_type\": {","                            \"type\":\"object\",                    ","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"subtype\": {\"type\":\"string\"},","                                \"type\": {\"type\":\"string\"}","                            }","                        },","                        \"balance\": {","                            \"type\":\"object\",                    ","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"currency\": {\"type\":\"string\"},","                                \"raw\": {\"type\":\"string\"},","                                \"value\": {\"type\":\"number\"}","                            },","                            \"required\": [","                                //\"currency\",","                                //\"raw\",","                                \"value\"","                            ]","                        },","                        \"country\": {\"type\": \"string\"},","                        \"created_at\": {\"type\":\"string\"},","                        \"group_id\": {\"type\":\"string\"},","                        \"is_closed\": {\"type\":\"boolean\"},","                        \"is_excluded\": {\"type\":\"boolean\"},","                        \"is_parent\": {\"type\":\"boolean\"},","                        \"metadata\": {\"type\":\"object\"},","                        \"statement_balance\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"currency\": {\"type\":\"string\"},","                                \"raw\": {\"type\":\"string\"},","                                \"value\": {\"type\":\"number\"}","                            },","                            \"required\": [","                                //\"currency\",","                                //\"raw\",","                                \"value\"","                            ]","                        },","                        \"updated_at\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        //\"account_currency\",","                        \"account_id\",","                        \"account_name\",","                        \"account_type\",","                        \"balance\",","                        \"created_at\",","                        \"group_id\",","                        \"is_closed\",","                        \"is_excluded\",","                        \"is_parent\",","                        \"statement_balance\",","                        \"updated_at\"","                    ]","                }","            },","            \"institution\": {\"type\":\"object\"},","            \"login_identity\": {\"type\":\"object\"}","        },","        \"required\" : [","            \"accounts\",","            \"institution\",","            \"login_identity\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","","//[NO_DOC] ADDITIONAL DATA RETRIEVAL TESTS - START","if (pm.environment.get(\"run_data_retrieval_tests\") === \"true\") {","","    pm.test(\"At least 1 account found\", function() {","        pm.expect(jsonData.accounts.length).to.be.at.least(1)","    });","","    pm.test(\"Account0 balance is not null\", function() {","        pm.expect(jsonData.accounts[0].balance.value).to.not.eql([\"null\", undefined])","    });","","    var expectedNumberAccounts = Number(pm.environment.get(\"expected_number_accounts\"))","    pm.test(\"Found expected number of accounts\", function() {","        pm.expect(jsonData.accounts.length).to.be.eql(expectedNumberAccounts)","    })","","};","//[NO_DOC] ADDITIONAL DATA RETRIEVAL TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"8e62126e-0f79-4320-b47d-5d2ba5bcb5f7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/accounts","description":"<p>Retrieve all Accounts under a Login Identity (using a specific <code>login_identity_token</code>).</p>\n<p><strong>Authorization</strong>: <code>login_identity_token</code></p>\n<h2 id=\"response-fields\">Response fields</h2>\n<h3 id=\"accounts\">accounts</h3>\n<p>Full <code>accounts</code> array, containing a list of accounts with account-level balances &amp; metadata.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>account_currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code), optional</td>\n<td>Currency of the account (e.g. USD). Usually available, but may be null for zero-balance accounts (e.g. multi-currency or time-deposit account with zero balance).</td>\n</tr>\n<tr>\n<td>account_holder_name</td>\n<td>string, optional</td>\n<td>(Deprecated) Account holder name (if provided by the institution). Replaced by GET /identity.</td>\n</tr>\n<tr>\n<td>account_id</td>\n<td>string (ULID)</td>\n<td>Finverse account ID. This is deterministically computed, such that the same account record provided by an institution across 2 or more data retrieval sessions will always have the same <code>account_id</code>.</td>\n</tr>\n<tr>\n<td>account_name</td>\n<td>string</td>\n<td>End-user recognizable name for the account.</td>\n</tr>\n<tr>\n<td>account_nickname</td>\n<td>string, optional</td>\n<td>Nickname for the account (if provided by the instiution). This is typically a custom account name set by the end-user.</td>\n</tr>\n<tr>\n<td>account_number_masked</td>\n<td>string, optional</td>\n<td>Masked account number. Format: preserves original length; shows first 0-4 digits + last 2-4 digits in plain text (depending on original length); omits spaces/symbols.</td>\n</tr>\n<tr>\n<td>account_type</td>\n<td>object</td>\n<td><strong>Beta</strong>: account type object (see below)</td>\n</tr>\n<tr>\n<td>balance</td>\n<td>object (balance)</td>\n<td>Balance object, in the account_currency (see below).</td>\n</tr>\n<tr>\n<td>country</td>\n<td>string (ISO 3166-1: Alpha-3 code), optional</td>\n<td>3-letter country code for the account (e.g. \"HKG\")</td>\n</tr>\n<tr>\n<td>created_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp for when the account's record was first written to Finverse's database.</td>\n</tr>\n<tr>\n<td>group_id</td>\n<td>string</td>\n<td>ID used to identify a group of related parent + sub-accounts. This is deterministically computed based on the shared account number of the related accounts.</td>\n</tr>\n<tr>\n<td>is_closed</td>\n<td>boolean</td>\n<td>Reserved for future use.</td>\n</tr>\n<tr>\n<td>is_excluded</td>\n<td>boolean</td>\n<td>Reserved for future use.</td>\n</tr>\n<tr>\n<td>is_parent</td>\n<td>boolean</td>\n<td>Flag for parent/master accounts (e.g. \"Integrated Account\" in Hong Kong). To avoid showing duplicate accounts, we recommend disregarding parent account data and referring instead to associated sub-accounts (using <code>group_id</code>).</td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object</td>\n<td><strong>Beta</strong>: Metadata object, containing additional account information (for some institutions only)</td>\n</tr>\n<tr>\n<td>statement_balance</td>\n<td>object (balance)</td>\n<td>Balance object, in the institution's reporting or statement currency (if provided by the institution). E.g. balance in HKD for a USD Savings account at a Hong Kong bank. If not provided by the institution, the <code>statement_balance</code> will be same as <code>balance</code>.</td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last update to the account's record.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"account_type-object\">account_type (object)</h4>\n<blockquote>\n<p>Beta (subject to change). </p>\n</blockquote>\n<p>Details on the account type/classification.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>subtype</td>\n<td>string ENUM</td>\n<td>Secondary classification of the account. Possible values: <code>BONDS</code>, <code>CURRENT</code>, <code>CREDIT_CARD</code>, <code>DEBIT_CARD</code>, <code>FUNDS</code>, <code>MORTGAGE</code>, <code>PERSONAL_LOAN</code>, <code>RETIREMENT</code>,<code>REVOLVING_LOAN</code>, <code>SAVINGS</code>, <code>SECURITIES</code>, <code>STOCKS</code>, <code>TIME_DEPOSIT</code>, <code>OTHER</code>, <code>UNKNOWN</code></td>\n</tr>\n<tr>\n<td>type</td>\n<td>string ENUM</td>\n<td>Primary classification of the account. Possible values: <code>CARD</code>, <code>DEPOSIT</code>, <code>INVESTMENT</code>, <code>LOAN</code>, <code>OTHER</code>, <code>UNKNOWN</code></td>\n</tr>\n</tbody>\n</table>\n</div><p>For each account <code>type</code>, the following <code>subtypes</code> are available:</p>\n<ul>\n<li><p><code>CARD</code>: <code>CREDIT_CARD</code>, <code>DEBIT_CARD</code>, <code>OTHER</code>, <code>UNKNOWN</code></p>\n</li>\n<li><p><code>DEPOSIT</code>: <code>CURRENT</code>, <code>SAVINGS</code>, <code>TIME_DEPOSIT</code>, <code>OTHER</code>, <code>UNKNOWN</code></p>\n</li>\n<li><p><code>INVESTMENT</code>: <code>BONDS</code>, <code>FUNDS</code>, <code>RETIREMENT</code>,<code>SECURITIES</code>, <code>STOCKS</code>, <code>OTHER</code>, <code>UNKNOWN</code></p>\n</li>\n<li><p><code>LOAN</code>: <code>MORTGAGE</code>, <code>PERSONAL_LOAN</code>, <code>REVOLVING_LOAN</code>, <code>OTHER</code>, <code>UNKNOWN</code></p>\n</li>\n<li><p><code>OTHER</code>: <code>OTHER</code></p>\n</li>\n<li><p><code>UNKNOWN</code>: <code>UNKNOWN</code></p>\n</li>\n</ul>\n<p>Note: <code>UNKNOWN</code> refers to cases where the account type/subtype mapping is not available for that Institution or Account.</p>\n<h4 id=\"balance-object\">balance (object)</h4>\n<p>Details of an account's balance or statement_balance.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code), optional</td>\n<td>Currency of the balance <code>value</code>. Usually available, but may be null for zero-balance accounts.</td>\n</tr>\n<tr>\n<td>raw</td>\n<td>string, optional</td>\n<td>Raw amount of the balance (as reported by the institution). Usually available, but may be null for zero-balance accounts. Intended for QA only.</td>\n</tr>\n<tr>\n<td>value</td>\n<td>number</td>\n<td>Amount of the balance. Sign follows financial statement conventions (positive sign: assets; negative sign: liabilities).</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"institution\">institution</h3>\n<p>Summary Institutions object. See <code>GET /institutions</code> for details.</p>\n<h3 id=\"login_identity\">login_identity</h3>\n<p>Summary Login Identity object. See <code>GET /login_identity</code> for details.</p>\n<h3 id=\"metadata\">metadata</h3>\n<blockquote>\n<p>Beta (subject to change). </p>\n</blockquote>\n<p>Metadata object containing additional account information (for some institutions only).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>ada_bank_ref</td>\n<td>string, optional</td>\n<td>Bank's auto debit authorization reference.  <br />  <br />Note: <code>ada_</code> fields only apply to accounts with an auto debit / direct debit authorization setup by Finverse.</td>\n</tr>\n<tr>\n<td>ada_ref</td>\n<td>string, optional</td>\n<td>Merchant's auto debit authorization reference, sometimes also referred to as \"Subscriber number\"</td>\n</tr>\n<tr>\n<td>ada_status</td>\n<td>string, optional</td>\n<td>Auto debit authorization status.  <br />Possible values: <code>SETUP_PROCESSING</code></td>\n</tr>\n<tr>\n<td>ada_submitted_date</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp when the auto debit authorization was submitted to the bank</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["accounts"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"5f56a752-a625-49e9-ac32-6f1d76f90347","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"url":"https://api.prod.finverse.net/accounts"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-faaaf9946310a4ab4f46e166dd13620b-163d5fc1af3ef422-01"},{"key":"vary","value":"Origin"},{"key":"x-cloud-trace-context","value":"faaaf9946310a4ab4f46e166dd13620b/1602542327887229986;o=1"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Tue, 09 Feb 2021 03:40:41 GMT"},{"key":"content-length","value":"740"},{"key":"x-envoy-upstream-service-time","value":"46"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"accounts\": [\n        {\n            \"account_currency\": \"HKD\",\n            \"account_id\": \"01F7MP3XTNX36K9N66JPKH131P\",\n            \"account_name\": \"HKD Checking\",\n            \"account_number_masked\": \"111XXXXXXX-666\",\n            \"account_type\": {\n                \"subtype\": \"CHECKING\",\n                \"type\": \"DEPOSIT\"\n            },\n            \"balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"70013.12\",\n                \"value\": 70013.12\n            },\n            \"created_at\": \"2021-06-08T02:09:42.000Z\",\n            \"group_id\": \"5578758a56843bbe7104f0915f807eae4231aa0e5ce2bc0950c4fcb372b85948\",\n            \"is_closed\": false,\n            \"is_excluded\": false,\n            \"is_parent\": false,\n            \"statement_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"70013.12\",\n                \"value\": 70013.12\n            },\n            \"updated_at\": \"2021-06-08T02:09:42.000Z\"\n        },\n        {\n            \"account_currency\": \"HKD\",\n            \"account_id\": \"01F7MP3XTQ4Y8AFQ9KDFQXF14Y\",\n            \"account_name\": \"HKD Credit Card\",\n            \"account_type\": {\n                \"subtype\": \"CREDIT_CARD\",\n                \"type\": \"CARD\"\n            },\n            \"balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"-1833.22\",\n                \"value\": -1833.22\n            },\n            \"created_at\": \"2021-06-08T02:09:42.000Z\",\n            \"group_id\": \"4f776329e40d2aafaeb33415283aea9e0dae84467aeaa51c5030e4b0311b6040\",\n            \"is_closed\": false,\n            \"is_excluded\": false,\n            \"is_parent\": false,\n            \"statement_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"-1833.22\",\n                \"value\": -1833.22\n            },\n            \"updated_at\": \"2021-06-08T02:09:42.000Z\"\n        },\n        {\n            \"account_currency\": \"USD\",\n            \"account_id\": \"01F7MP3XTSBSTG6G68FESC66B1\",\n            \"account_name\": \"USD FX\",\n            \"account_type\": {\n                \"subtype\": \"OTHER\",\n                \"type\": \"DEPOSIT\"\n            },\n            \"balance\": {\n                \"currency\": \"USD\",\n                \"raw\": \"1923.22\",\n                \"value\": 1923.22\n            },\n            \"created_at\": \"2021-06-08T02:09:42.000Z\",\n            \"group_id\": \"582c1d9912586672ef9d028d7ed521ffedf9bb11d2392ddf1c2ec2e231c49ce5\",\n            \"is_closed\": false,\n            \"is_excluded\": false,\n            \"is_parent\": false,\n            \"statement_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"15001.116\",\n                \"value\": 15001.116\n            },\n            \"updated_at\": \"2021-06-08T02:09:42.000Z\"\n        },\n        {\n            \"account_currency\": \"BTC\",\n            \"account_id\": \"01F7MP3XTV38VSZMVF4C65NHT3\",\n            \"account_name\": \"Bitcoin\",\n            \"account_type\": {\n                \"subtype\": \"OTHER\",\n                \"type\": \"OTHER\"\n            },\n            \"balance\": {\n                \"currency\": \"BTC\",\n                \"raw\": \"420.69\",\n                \"value\": 420.69\n            },\n            \"created_at\": \"2021-06-08T02:09:42.000Z\",\n            \"group_id\": \"582c1d9912586672ef9d028d7ed521ffedf9bb11d2392ddf1c2ec2e231c49ce5\",\n            \"is_closed\": false,\n            \"is_excluded\": false,\n            \"is_parent\": false,\n            \"statement_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"106468292.05\",\n                \"value\": 106468292.05\n            },\n            \"updated_at\": \"2021-06-08T02:09:42.000Z\"\n        }\n    ],\n    \"institution\": {\n        \"countries\": [\n            \"HKG\",\n            \"SGP\",\n            \"PHL\"\n        ],\n        \"institution_id\": \"testbank\",\n        \"institution_name\": \"TestBank HK\",\n        \"portal_name\": \"Test Bank Personal Account\"\n    },\n    \"login_identity\": {\n        \"login_identity_id\": \"01F7MP3J3H485QSDQC0FS15KE7\",\n        \"status\": \"DATA_RETRIEVAL_COMPLETE\"\n    }\n}"}],"_postman_id":"8e62126e-0f79-4320-b47d-5d2ba5bcb5f7"},{"name":"/accounts/{account_id}","event":[{"listen":"test","script":{"id":"54b8042f-0fe9-43b1-87ba-9670e523d163","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Account or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"account\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"account\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"account_currency\": {\"type\":\"string\"},","                    \"account_holder_name\": {\"type\":\"string\"},","                    \"account_id\": {\"type\":\"string\"},","                    \"account_name\": {\"type\":\"string\"},","                    \"account_nickname\": {\"type\": \"string\"},","                    \"account_number_masked\": {\"type\": \"string\"},","                    \"account_type\": {","                        \"type\":\"object\",                    ","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"subtype\": {\"type\":\"string\"},","                            \"type\": {\"type\":\"string\"}","                        }","                    },","                    \"balance\": {","                        \"type\":\"object\",                    ","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"currency\": {\"type\":\"string\"},","                            \"raw\": {\"type\":\"string\"},","                            \"value\": {\"type\":\"number\"}","                        },","                        \"required\": [","                            //\"currency\",","                            //\"raw\",","                            \"value\"","                        ]","                    },","                    \"country\": {\"type\": \"string\"},","                    \"created_at\": {\"type\":\"string\"},","                    \"group_id\": {\"type\":\"string\"},","                    \"is_closed\": {\"type\":\"boolean\"},","                    \"is_excluded\": {\"type\":\"boolean\"},","                    \"is_parent\": {\"type\":\"boolean\"},","                    \"metadata\": {\"type\":\"object\"},","                    \"statement_balance\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"currency\": {\"type\":\"string\"},","                            \"raw\": {\"type\":\"string\"},","                            \"value\": {\"type\":\"number\"}","                        },","                        \"required\": [","                            //\"currency\",","                            //\"raw\",","                            \"value\"","                        ]","                    },","                    \"updated_at\": {\"type\":\"string\"}","                },","                \"required\": [","                    //\"account_currency\",","                    \"account_id\",","                    \"account_name\",","                    \"account_type\",","                    \"balance\",","                    \"created_at\",","                    \"group_id\",","                    \"is_closed\",","                    \"is_excluded\",","                    \"is_parent\",","                    \"statement_balance\",","                    \"updated_at\"","                ]","            },","            \"institution\": {\"type\":\"object\"},","            \"login_identity\": {\"type\":\"object\"}","        },","        \"required\" : [","            \"account\",","            \"institution\",","            \"login_identity\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"910dd295-123b-4c0a-a97a-7bc4ca9d9ca4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/accounts/{{account_id}}","description":"<p>Retrieve a specific Account under a Login Identity (using a specific <code>account_id</code>).</p>\n<p><strong>Authorization</strong>: <code>login_identity_token</code></p>\n<h2 id=\"response-fields\">Response fields</h2>\n<h3 id=\"account\">account</h3>\n<p>A single <code>account</code> object, containing account-level balances &amp; metadata.</p>\n<p>Refer to <code>accounts</code> data model in <code>GET /accounts</code>.</p>\n","urlObject":{"path":["accounts","{{account_id}}"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"0902cf05-5e18-420a-bff9-3bc49cfd4236","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"url":"https://api.prod.finverse.net/accounts/{{account_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-2f96c0be6f297e80d78137bde6aeef12-c9855d11703f97cf-01"},{"key":"vary","value":"Origin"},{"key":"x-cloud-trace-context","value":"2f96c0be6f297e80d78137bde6aeef12/14521114903005075407;o=1"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Tue, 09 Feb 2021 03:41:45 GMT"},{"key":"content-length","value":"737"},{"key":"x-envoy-upstream-service-time","value":"29"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"account\": {\n        \"account_currency\": \"HKD\",\n        \"account_id\": \"01EY2DHX40KC1BXA86GVSR7SQH\",\n        \"account_name\": \"HKD Statement Savings\",\n        \"account_number_masked\": \"111XXXXXXX-666\",\n        \"account_type\": {\n            \"subtype\": \"SAVINGS\",\n            \"type\": \"DEPOSIT\"\n        },\n        \"balance\": {\n            \"currency\": \"HKD\",\n            \"raw\": \"19,806.58\",\n            \"value\": 19806.58\n        },\n        \"created_at\": \"2021-02-09T03:32:26.000Z\",\n        \"group_id\": \"760774838dfbe0b154cb09425559e19bd91aecf600cd801a32d9b46e17055d92\",\n        \"is_closed\": false,\n        \"is_excluded\": false,\n        \"is_parent\": false,\n        \"statement_balance\": {\n            \"currency\": \"HKD\",\n            \"raw\": \"19,806.58\",\n            \"value\": 19806.58\n        },\n        \"updated_at\": \"2021-02-09T03:32:32.000Z\"\n    },\n    \"institution\": {\n        \"countries\": [\n            \"HKG\",\n            \"SGP\",\n            \"PHL\"\n        ],\n        \"institution_id\": \"testbank\",\n        \"institution_name\": \"TestBank HK\",\n        \"portal_name\": \"Test Bank Personal Account\"\n    },\n    \"login_identity\": {\n        \"login_identity_id\": \"01EY2DHD5THTP57GV9M4YVYX1Q\",\n        \"status\": \"DATA_RETRIEVAL_COMPLETE\"\n    }\n}"},{"id":"35bf87e4-8202-4ca9-b9be-9a190260edce","name":"Error (Account not found)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"url":"https://api.prod.finverse.net/accounts/{{account_id}}2"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Thu, 08 Dec 2022 18:09:25 GMT"},{"key":"Content-Length","value":"241"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40004,\n        \"error_code\": \"ACCOUNT_NOT_FOUND\",\n        \"message\": \"account_id cannot be found. Resource does not exist, has been deleted, or is no longer accessible.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"910dd295-123b-4c0a-a97a-7bc4ca9d9ca4"}],"id":"7647af46-0bfb-4620-9540-3132a0a1a179","description":"<p>Note: <code>GET</code> data requests read <em>previously retrieved</em> data from Finverse's database. To request Finverse to retrieve new data from connected institutions, please use the <code>POST</code> requests under \"<strong>Data Refresh</strong>\".</p>\n<p>See \"<em>Guidance: When to fetch data from Finverse</em>\" under <strong>04 - Login Identity</strong> for details on when data is available for fetching.</p>\n","event":[{"listen":"prerequest","script":{"id":"f6e19b13-081c-4dbe-b851-2d7b63dc0aed","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"4375ac47-0717-429d-8067-7dd046450d1c","type":"text/javascript","exec":[""]}}],"_postman_id":"7647af46-0bfb-4620-9540-3132a0a1a179"},{"name":"04 - Transactions","item":[{"name":"/transactions","event":[{"listen":"test","script":{"id":"4be653d7-fdb8-467c-bae9-61a8fc5bff02","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.transactions) {","    console.log(\"Number of transactions for all accounts:\", jsonData.transactions.length);","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Transactions or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"transactions\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"accounts\": {","                \"type\":\"array\",","                \"items\": {","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"account_currency\": {\"type\":\"string\"},","                        \"account_holder_name\": {\"type\":\"string\"},","                        \"account_id\": {\"type\":\"string\"},","                        \"account_name\": {\"type\":\"string\"},","                        \"account_nickname\": {\"type\":\"string\"},","                        \"account_number_masked\": {\"type\": \"string\"},","                        \"account_type\": {","                            \"type\":\"object\",                    ","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"subtype\": {\"type\":\"string\"},","                                \"type\": {\"type\":\"string\"}","                            }","                        },","                        \"balance\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"currency\": {\"type\":\"string\"},","                                \"raw\": {\"type\":\"string\"},","                                \"value\": {\"type\":\"number\"}","                            },","                            \"required\": [","                                //\"currency\",","                                //\"raw\",","                                \"value\"","                            ]","                        },","                        \"country\": {\"type\": \"string\"},","                        \"created_at\": {\"type\":\"string\"},","                        \"group_id\": {\"type\":\"string\"},","                        \"is_closed\": {\"type\":\"boolean\"},","                        \"is_excluded\": {\"type\":\"boolean\"},","                        \"is_parent\": {\"type\":\"boolean\"},","                        \"metadata\": {\"type\":\"object\"},","                        \"statement_balance\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"currency\": {\"type\":\"string\"},","                                \"raw\": {\"type\":\"string\"},","                                \"value\": {\"type\":\"number\"}","                            },","                            \"required\": [","                                //\"currency\",","                                //\"raw\",","                                \"value\"","                            ]","                        },","                        \"updated_at\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        //\"account_currency\",","                        \"account_id\",","                        \"account_name\",","                        \"account_type\",","                        \"balance\",","                        \"created_at\",","                        \"group_id\",","                        \"is_closed\",","                        \"is_excluded\",","                        \"is_parent\",","                        \"statement_balance\",","                        \"updated_at\"","                    ]","                }","            },","            \"institution\": {\"type\":\"object\"},","            \"login_identity\": {\"type\":\"object\"},","            \"total_transactions\": {\"type\":\"number\"},","            \"transactions\": {","                \"type\":\"array\",","                \"items\": {","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"account_id\": {\"type\":\"string\"}, ","                        \"amount\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"currency\": {\"type\":\"string\"}, ","                                \"raw\": {\"type\":\"string\"}, ","                                \"value\": {\"type\":\"number\"}","                            },","                            \"required\": [","                                \"currency\",","                                \"raw\",","                                \"value\"","                            ]","                        },","                        \"categories\": {\"type\": [\"object\", \"null\"]},","                        \"category_predictions\": {\"type\": [\"object\", \"null\"]},","                        \"created_at\": {\"type\":\"string\"}, ","                        \"description\": {\"type\":\"string\"},","                        \"is_pending\": {\"type\":\"boolean\"},","                        \"posted_date\": {\"type\":\"string\"}, ","                        \"running_balance\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"currency\": {\"type\":\"string\"},","                                \"raw\": {\"type\":\"string\"},","                                \"value\": {\"type\":\"number\"}","                            },","                            \"required\": [","                                \"currency\",","                                \"raw\",","                                \"value\"","                            ]","                        },","                        \"transaction_date\": {\"type\": \"string\"},","                        \"transaction_details\": {\"type\": [\"object\", \"null\"]},","                        \"transaction_id\": {\"type\":\"string\"}, ","                        \"transaction_reference\": {\"type\": \"string\"},","                        \"transaction_time\": {\"type\":\"string\"}, ","                        \"updated_at\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"account_id\",","                        \"amount\",","                        \"categories\",","                        \"category_predictions\",","                        \"created_at\",","                        \"description\",","                        \"is_pending\",","                        \"posted_date\",","                        \"transaction_id\",","                        \"updated_at\"","                    ]","                }","            }","        },","        \"required\" : [","            \"accounts\",","            \"institution\",","            \"login_identity\",","            \"total_transactions\",","            \"transactions\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","","//ADDITIONAL DATA RETRIEVAL TESTS - START","if (pm.environment.get(\"run_data_retrieval_tests\") === \"true\") {","","    pm.test(\"At least 1 transaction found\", function() {","        pm.expect(jsonData.transactions.length).to.be.at.least(1)","    });","","}","//ADDITIONAL DATA RETRIEVAL TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"cda645e6-bb83-4958-a435-5d80a6ce0e56","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/transactions?offset=0&limit=100","description":"<p>Retrieve all Transactions under a Login Identity (using a specific <code>login_identity_token</code>).</p>\n<p><strong>Authorization</strong>: <code>login_identity_token</code></p>\n<h2 id=\"request-parameters-optional\">Request parameters (optional)</h2>\n<p>Use the following optional URL parameters to customize pagination of transaction records.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>offset</td>\n<td>integer</td>\n<td>Pagination offset (default: 0)</td>\n</tr>\n<tr>\n<td>limit</td>\n<td>integer</td>\n<td>Maximum number of records per page (default: 500, max: 1000)</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-fields\">Response fields</h2>\n<h3 id=\"accounts\">accounts</h3>\n<p>Full Accounts array. See <code>GET /accounts</code> for details.</p>\n<h3 id=\"institution\">institution</h3>\n<p>Summary Institution object. See <code>GET /institutions</code> for details.</p>\n<h3 id=\"login_identity\">login_identity</h3>\n<p>Summary Login Identity object. See <code>GET /login_identity</code> for details.</p>\n<h3 id=\"total_transactions\">total_transactions</h3>\n<p>Total number of transaction records available (can be used to inform pagination requests).</p>\n<h3 id=\"transactions\">transactions</h3>\n<p>Full <code>transactions</code> array, containing each transaction record.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>account_id</td>\n<td>string (ULID)</td>\n<td>Finverse account ID (see <code>GET /accounts</code>)</td>\n</tr>\n<tr>\n<td>amount</td>\n<td>object</td>\n<td>Amount object. See below.</td>\n</tr>\n<tr>\n<td>categories</td>\n<td>object, nullable</td>\n<td>(Reserved for future use) Categories object</td>\n</tr>\n<tr>\n<td>category_predictions</td>\n<td>array, nullable</td>\n<td>(Reserved for future use) Category predictions array</td>\n</tr>\n<tr>\n<td>created_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp for when the transaction record was first written to Finverse's database.</td>\n</tr>\n<tr>\n<td>description</td>\n<td>string, optional</td>\n<td>Transaction description provided by the institution. Usually provided, but occasionally some bank transactions do not include a description.</td>\n</tr>\n<tr>\n<td>is_pending</td>\n<td>boolean</td>\n<td>Flag to indicate transaction is pending (if provided by the institution)</td>\n</tr>\n<tr>\n<td>posted_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD)</td>\n<td>Transaction record date provided by the instiution. This is provided for all transactions, and is the primary date to use for transactions.</td>\n</tr>\n<tr>\n<td>running_balance</td>\n<td>object, optional</td>\n<td>Account's running balance associated with each transaction (if running balance is reported by the bank). See below.</td>\n</tr>\n<tr>\n<td>transaction_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>Original transaction date (if provided by the bank). This is optional -- typically only credit cards have a <code>transaction_date</code> (i.e. card swipe date), which is usually 0-2 days earlier than the <code>posted_date</code></td>\n</tr>\n<tr>\n<td>transaction_details</td>\n<td>object, nullable</td>\n<td>(BETA) Additional details on each transaction if provided by the institution. See below.</td>\n</tr>\n<tr>\n<td>transaction_id</td>\n<td>string (ULID)</td>\n<td>Finverse transaction ID. This is deterministically computed, such that the same transaction record provided by an institution across 2 or more data retrieval sessions will always have the same <code>transaction_id</code>.</td>\n</tr>\n<tr>\n<td>transaction_reference</td>\n<td>string, optional</td>\n<td>Transaction reference (if provided by the institution)</td>\n</tr>\n<tr>\n<td>transaction_time</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Original transaction time (if provided by the institution), in UTC</td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last update to the transaction record</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"amount-object\">amount (object)</h4>\n<p>Details of a transaction's amount.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code)</td>\n<td>Currency of the transaction <code>value</code>.</td>\n</tr>\n<tr>\n<td>raw</td>\n<td>string</td>\n<td>Raw amount of the transaction (as reported by the bank). Intended for QA only.</td>\n</tr>\n<tr>\n<td>value</td>\n<td>number</td>\n<td>Amount of the transaction. Sign follows financial statement conventions (positive sign: money received / income; negative sign: money sent / expenses).</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"running_balance-object-optional\">running_balance (object, optional)</h4>\n<p>Details of the account's running balance amount associated with each transaction.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code)</td>\n<td>Currency of running balance <code>value</code></td>\n</tr>\n<tr>\n<td>raw</td>\n<td>string</td>\n<td>Raw amount of the running balance (as reported by the bank). Intended for QA only.</td>\n</tr>\n<tr>\n<td>value</td>\n<td>number</td>\n<td>Running balance amount . Amount of the balance. Sign follows financial statement conventions (positive sign: assets; negative sign: liabilities).</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"transaction_details-object-nullable\">transaction_details (object, nullable)</h4>\n<p><strong>(BETA)</strong> Additional details on each transaction if provided by the institution.</p>\n<p>Note: this object does not yet offer a fully structured data model; it may change at any time. Most institutions will not provide any values. The data model for each field is institution-specific.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>bank_reference</td>\n<td>string, optional</td>\n<td>Institution's reference ID for the transaction</td>\n</tr>\n<tr>\n<td>bank_transaction_code</td>\n<td>string, optional</td>\n<td>Transaction categorization code (as provided by the institution)</td>\n</tr>\n<tr>\n<td>channel</td>\n<td>string, optional</td>\n<td>Channel used to initiate the transaction (as provided by the institution).</td>\n</tr>\n<tr>\n<td>counterparty_account_number</td>\n<td>string, optional</td>\n<td>Account number of the counterparty account for a transaction (e.g. receiving account for a transfer-out or bill; sending account for transfer-in).</td>\n</tr>\n<tr>\n<td>counterparty_institution_name</td>\n<td>string, optional</td>\n<td>Name of the institution/bank where the counterparty account is held.</td>\n</tr>\n<tr>\n<td>counterparty_name</td>\n<td>string, optional</td>\n<td>Accountholder name of the counterparty account for a transaction (e.g. receiving party for a transfer-out or bill; sending party for transfer-in).</td>\n</tr>\n<tr>\n<td>fund_transfer_status</td>\n<td>string, optional</td>\n<td>Bank transfer status (as provided by the institution). Only applies to bank transfers.</td>\n</tr>\n<tr>\n<td>instapay_reference</td>\n<td>string, optional</td>\n<td>(Philippines) InstaPay reference ID for the transaction (note: not available for all InstaPay transactions)</td>\n</tr>\n<tr>\n<td>purpose_code</td>\n<td>string, optional</td>\n<td>Transaction purpose code (as provided by the institution).</td>\n</tr>\n<tr>\n<td>purpose_description</td>\n<td>string, optional</td>\n<td>Transaction purpose description (as provided by the institution)</td>\n</tr>\n<tr>\n<td>service_fee</td>\n<td>string, optional</td>\n<td>Fee amount charged by the institution for the transaction. Provided as a string (integer or decimal text).</td>\n</tr>\n<tr>\n<td>transaction_type</td>\n<td>string, optional</td>\n<td>Transaction type (as provided by the institution)</td>\n</tr>\n<tr>\n<td>transfer_type</td>\n<td>string, optional</td>\n<td>Bank transfer type (as provided by the institution). Only applies to bank transfers.</td>\n</tr>\n<tr>\n<td>{other fields}</td>\n<td>string, optional</td>\n<td>Additional non-documented fields are provided for some institutions. Review institution-level data for these fields.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["transactions"],"host":["https://api.prod.finverse.net"],"query":[{"description":{"content":"<p>Optional, default is 0</p>\n","type":"text/plain"},"key":"offset","value":"0"},{"description":{"content":"<p>Optional, default is 500, max is 1000</p>\n","type":"text/plain"},"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"9a25a9c2-1d4c-45f1-ba3c-7a80ff6eb499","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":{"raw":"https://api.prod.finverse.net/transactions?offset=0&limit=10","host":["https://api.prod.finverse.net"],"path":["transactions"],"query":[{"key":"offset","value":"0","description":"Optional, default is 0"},{"key":"limit","value":"10","description":"Optional, default is 500, max is 1000"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1716263151"},{"key":"Date","value":"Tue, 21 May 2024 03:45:51 GMT"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"accounts\": [\n        {\n            \"account_currency\": \"HKD\",\n            \"account_id\": \"01HYCM02EGRVHEFNNYP77ENF92\",\n            \"account_name\": \"HKD Checking\",\n            \"account_number_masked\": \"123XXXX89\",\n            \"account_type\": {\n                \"subtype\": \"CURRENT\",\n                \"type\": \"DEPOSIT\"\n            },\n            \"balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"70013.12\",\n                \"value\": 70013.12\n            },\n            \"created_at\": \"2024-05-21T03:44:22.000Z\",\n            \"group_id\": \"01HYCM02FECX9GV4WCSH1C7QC1\",\n            \"is_closed\": false,\n            \"is_excluded\": false,\n            \"is_parent\": false,\n            \"statement_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"70013.12\",\n                \"value\": 70013.12\n            },\n            \"updated_at\": \"2024-05-21T03:44:22.000Z\"\n        },\n        {\n            \"account_currency\": \"USD\",\n            \"account_id\": \"01HYCM02EMQSVBB851YCYYXJZF\",\n            \"account_name\": \"USD FX\",\n            \"account_number_masked\": \"888XXXX88\",\n            \"account_type\": {\n                \"subtype\": \"UNKNOWN\",\n                \"type\": \"UNKNOWN\"\n            },\n            \"balance\": {\n                \"currency\": \"USD\",\n                \"raw\": \"1923.22\",\n                \"value\": 1923.22\n            },\n            \"created_at\": \"2024-05-21T03:44:22.000Z\",\n            \"group_id\": \"01HYCM02FHXC9SPTM4XAE8EEGF\",\n            \"is_closed\": false,\n            \"is_excluded\": false,\n            \"is_parent\": false,\n            \"statement_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"15001.116\",\n                \"value\": 15001.116\n            },\n            \"updated_at\": \"2024-05-21T03:44:22.000Z\"\n        },\n        {\n            \"account_currency\": \"BTC\",\n            \"account_id\": \"01HYCM02EQ5BKMBKGANEF8TX4E\",\n            \"account_name\": \"Bitcoin\",\n            \"account_number_masked\": \"888XXXX88\",\n            \"account_type\": {\n                \"subtype\": \"UNKNOWN\",\n                \"type\": \"UNKNOWN\"\n            },\n            \"balance\": {\n                \"currency\": \"BTC\",\n                \"raw\": \"420.69\",\n                \"value\": 420.69\n            },\n            \"created_at\": \"2024-05-21T03:44:22.000Z\",\n            \"group_id\": \"01HYCM02FHXC9SPTM4XAE8EEGF\",\n            \"is_closed\": false,\n            \"is_excluded\": false,\n            \"is_parent\": false,\n            \"statement_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"106468292.05\",\n                \"value\": 106468292.05\n            },\n            \"updated_at\": \"2024-05-21T03:44:22.000Z\"\n        },\n        {\n            \"account_currency\": \"HKD\",\n            \"account_id\": \"01HYCM02EVQWNGW42BQRNAR1VF\",\n            \"account_name\": \"HKD Statement Savings\",\n            \"account_number_masked\": \"111XXXXX6666\",\n            \"account_type\": {\n                \"subtype\": \"SAVINGS\",\n                \"type\": \"DEPOSIT\"\n            },\n            \"balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"19806.58\",\n                \"value\": 19806.58\n            },\n            \"created_at\": \"2024-05-21T03:44:22.000Z\",\n            \"group_id\": \"01HYCM02FQECH1DHNJZQQ9NYYC\",\n            \"is_closed\": false,\n            \"is_excluded\": false,\n            \"is_parent\": false,\n            \"statement_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"19806.58\",\n                \"value\": 19806.58\n            },\n            \"updated_at\": \"2024-05-21T03:44:22.000Z\"\n        },\n        {\n            \"account_currency\": \"HKD\",\n            \"account_id\": \"01HYCM02EZXFMK930CRQT86WJN\",\n            \"account_name\": \"HKD Credit Card\",\n            \"account_number_masked\": \"1234XXXXXXXX0000\",\n            \"account_type\": {\n                \"subtype\": \"CREDIT_CARD\",\n                \"type\": \"CARD\"\n            },\n            \"balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"-1833.22\",\n                \"value\": -1833.22\n            },\n            \"created_at\": \"2024-05-21T03:44:22.000Z\",\n            \"group_id\": \"01HYCM02FT88EGQC8TXY5ZE0EH\",\n            \"is_closed\": false,\n            \"is_excluded\": false,\n            \"is_parent\": false,\n            \"statement_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"-1833.22\",\n                \"value\": -1833.22\n            },\n            \"updated_at\": \"2024-05-21T03:44:22.000Z\"\n        },\n        {\n            \"account_currency\": \"SGD\",\n            \"account_id\": \"01HYCM02F2WZ4BXTBW2GS0YAVD\",\n            \"account_name\": \"UOB Visa\",\n            \"account_number_masked\": \"4242XXXXXXXX4242\",\n            \"account_type\": {\n                \"subtype\": \"CREDIT_CARD\",\n                \"type\": \"CARD\"\n            },\n            \"balance\": {\n                \"currency\": \"SGD\",\n                \"raw\": \"-1456.90\",\n                \"value\": -1456.9\n            },\n            \"created_at\": \"2024-05-21T03:44:22.000Z\",\n            \"group_id\": \"01HYCM02FXX4VJVS7QHCQV3E2E\",\n            \"is_closed\": false,\n            \"is_excluded\": false,\n            \"is_parent\": false,\n            \"statement_balance\": {\n                \"currency\": \"SGD\",\n                \"raw\": \"-1456.90\",\n                \"value\": -1456.9\n            },\n            \"updated_at\": \"2024-05-21T03:44:22.000Z\"\n        },\n        {\n            \"account_currency\": \"SGD\",\n            \"account_id\": \"01HYCM02F6FCKZDCZHWHX01A31\",\n            \"account_name\": \"American Express Platinum\",\n            \"account_number_masked\": \"378XXXXXXXX0005\",\n            \"account_type\": {\n                \"subtype\": \"CREDIT_CARD\",\n                \"type\": \"CARD\"\n            },\n            \"balance\": {\n                \"currency\": \"SGD\",\n                \"raw\": \"-954.69\",\n                \"value\": -954.69\n            },\n            \"created_at\": \"2024-05-21T03:44:22.000Z\",\n            \"group_id\": \"01HYCM02G0A0F1F04JWY0AK56K\",\n            \"is_closed\": false,\n            \"is_excluded\": false,\n            \"is_parent\": false,\n            \"statement_balance\": {\n                \"currency\": \"SGD\",\n                \"raw\": \"-954.69\",\n                \"value\": -954.69\n            },\n            \"updated_at\": \"2024-05-21T03:44:22.000Z\"\n        }\n    ],\n    \"institution\": {\n        \"countries\": [\n            \"HKG\",\n            \"IDN\",\n            \"MYS\",\n            \"PHL\",\n            \"SGP\",\n            \"THA\",\n            \"VNM\"\n        ],\n        \"institution_id\": \"testbank\",\n        \"institution_name\": \"Testbank\",\n        \"portal_name\": \"Testbank Online Banking\"\n    },\n    \"login_identity\": {\n        \"last_session_id\": \"01HYCKZDZ1HPG5B5C96ARX46NA\",\n        \"login_identity_id\": \"01HYCKZDWF7XEZZH3SN9GDMXF7\",\n        \"status\": \"DATA_RETRIEVAL_COMPLETE\"\n    },\n    \"total_transactions\": 127,\n    \"transactions\": [\n        {\n            \"account_id\": \"01HYCM02EGRVHEFNNYP77ENF92\",\n            \"amount\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"523.00\",\n                \"value\": 523\n            },\n            \"categories\": null,\n            \"category_predictions\": null,\n            \"created_at\": \"2024-05-21T03:44:02.882Z\",\n            \"description\": \"Transfer\\nFPS/PILL Jane/FRN20240312PAYC0111547753897\",\n            \"is_pending\": false,\n            \"posted_date\": \"2024-11-11\",\n            \"running_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"70,013.12\",\n                \"value\": 70013.12\n            },\n            \"transaction_details\": {\n                \"counterparty_account_number\": \"01HYCM0QEJKNQEYTHKK6Z4R16Y\",\n                \"counterparty_name\": \"PILL Jane\",\n                \"fps_reference\": \"FRN20240312PAYC0111547753897\",\n                \"subtype\": \"FPS\",\n                \"type\": \"Transfer\"\n            },\n            \"transaction_id\": \"01HYCM0QH9RAJRGQNQ90CV8DF0\",\n            \"transaction_reference\": \"67891234\",\n            \"transaction_time\": \"2024-11-11T15:28:31.000Z\",\n            \"updated_at\": \"2024-05-21T03:44:02.882Z\"\n        },\n        {\n            \"account_id\": \"01HYCM02F2WZ4BXTBW2GS0YAVD\",\n            \"amount\": {\n                \"currency\": \"SGD\",\n                \"raw\": \"-9.81\",\n                \"value\": -9.81\n            },\n            \"categories\": null,\n            \"category_predictions\": null,\n            \"created_at\": \"2024-05-21T03:44:02.882Z\",\n            \"description\": \"Movie\",\n            \"is_pending\": false,\n            \"posted_date\": \"2023-07-13\",\n            \"transaction_details\": null,\n            \"transaction_id\": \"01HYCM0QY358JGZBTD4GN0Y9EN\",\n            \"updated_at\": \"2024-05-21T03:44:02.882Z\"\n        },\n        {\n            \"account_id\": \"01HYCM02F2WZ4BXTBW2GS0YAVD\",\n            \"amount\": {\n                \"currency\": \"SGD\",\n                \"raw\": \"200\",\n                \"value\": 200\n            },\n            \"categories\": null,\n            \"category_predictions\": null,\n            \"created_at\": \"2024-05-21T03:44:02.882Z\",\n            \"description\": \"Payment. Thank you\",\n            \"is_pending\": false,\n            \"posted_date\": \"2023-07-12\",\n            \"transaction_details\": null,\n            \"transaction_id\": \"01HYCM0QY7DNH3BHE9ZCNJ9MAF\",\n            \"updated_at\": \"2024-05-21T03:44:02.882Z\"\n        },\n        {\n            \"account_id\": \"01HYCM02F2WZ4BXTBW2GS0YAVD\",\n            \"amount\": {\n                \"currency\": \"SGD\",\n                \"raw\": \"-59.81\",\n                \"value\": -59.81\n            },\n            \"categories\": null,\n            \"category_predictions\": null,\n            \"created_at\": \"2024-05-21T03:44:02.882Z\",\n            \"description\": \"Food & Drinks\",\n            \"is_pending\": false,\n            \"posted_date\": \"2023-07-12\",\n            \"transaction_details\": null,\n            \"transaction_id\": \"01HYCM0QY5A2HGDGC8RQFXKKYS\",\n            \"updated_at\": \"2024-05-21T03:44:02.882Z\"\n        },\n        {\n            \"account_id\": \"01HYCM02F6FCKZDCZHWHX01A31\",\n            \"amount\": {\n                \"currency\": \"SGD\",\n                \"raw\": \"-19.81\",\n                \"value\": -19.81\n            },\n            \"categories\": null,\n            \"category_predictions\": null,\n            \"created_at\": \"2024-05-21T03:44:02.882Z\",\n            \"description\": \"Ristorante\",\n            \"is_pending\": false,\n            \"posted_date\": \"2023-07-11\",\n            \"transaction_details\": null,\n            \"transaction_id\": \"01HYCM0QYCGXBQX8519V23N62E\",\n            \"updated_at\": \"2024-05-21T03:44:02.882Z\"\n        },\n        {\n            \"account_id\": \"01HYCM02F2WZ4BXTBW2GS0YAVD\",\n            \"amount\": {\n                \"currency\": \"SGD\",\n                \"raw\": \"-59.81\",\n                \"value\": -59.81\n            },\n            \"categories\": null,\n            \"category_predictions\": null,\n            \"created_at\": \"2024-05-21T03:44:02.882Z\",\n            \"description\": \"SingTel SVC CHR JUL2023\",\n            \"is_pending\": false,\n            \"posted_date\": \"2023-07-11\",\n            \"transaction_details\": null,\n            \"transaction_id\": \"01HYCM0QYAJYFA689EHDSX27BZ\",\n            \"updated_at\": \"2024-05-21T03:44:02.882Z\"\n        },\n        {\n            \"account_id\": \"01HYCM02F6FCKZDCZHWHX01A31\",\n            \"amount\": {\n                \"currency\": \"SGD\",\n                \"raw\": \"100\",\n                \"value\": 100\n            },\n            \"categories\": null,\n            \"category_predictions\": null,\n            \"created_at\": \"2024-05-21T03:44:02.882Z\",\n            \"description\": \"Payment. Thank you\",\n            \"is_pending\": false,\n            \"posted_date\": \"2023-07-07\",\n            \"transaction_details\": null,\n            \"transaction_id\": \"01HYCM0QYEW19HN5YH7QH1KHSN\",\n            \"updated_at\": \"2024-05-21T03:44:02.882Z\"\n        },\n        {\n            \"account_id\": \"01HYCM02F6FCKZDCZHWHX01A31\",\n            \"amount\": {\n                \"currency\": \"SGD\",\n                \"raw\": \"-100.81\",\n                \"value\": -100.81\n            },\n            \"categories\": null,\n            \"category_predictions\": null,\n            \"created_at\": \"2024-05-21T03:44:02.882Z\",\n            \"description\": \"Flight to Shanghai\",\n            \"is_pending\": false,\n            \"posted_date\": \"2023-07-01\",\n            \"transaction_details\": null,\n            \"transaction_id\": \"01HYCM0QYHJ7BN3R56ER81BF53\",\n            \"updated_at\": \"2024-05-21T03:44:02.882Z\"\n        },\n        {\n            \"account_id\": \"01HYCM02EGRVHEFNNYP77ENF92\",\n            \"amount\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"-40.00\",\n                \"value\": -40\n            },\n            \"categories\": null,\n            \"category_predictions\": null,\n            \"created_at\": \"2024-05-21T03:44:02.882Z\",\n            \"description\": \"BAT STARBUCKS@CITY SI NG 25MAY 4628-1234-5678-1234\",\n            \"is_pending\": false,\n            \"posted_date\": \"2023-06-30\",\n            \"running_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"69,490.12\",\n                \"value\": 69490.12\n            },\n            \"transaction_details\": null,\n            \"transaction_id\": \"01HYCM0QHCFRSAZZ0A5KM3G4NM\",\n            \"updated_at\": \"2024-05-21T03:44:02.882Z\"\n        },\n        {\n            \"account_id\": \"01HYCM02EGRVHEFNNYP77ENF92\",\n            \"amount\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"-200.00\",\n                \"value\": -200\n            },\n            \"categories\": null,\n            \"category_predictions\": null,\n            \"created_at\": \"2024-05-21T03:44:02.882Z\",\n            \"description\": \"BEST MART 101: Jul_16\",\n            \"is_pending\": false,\n            \"posted_date\": \"2022-07-16\",\n            \"running_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"69,530.12\",\n                \"value\": 69530.12\n            },\n            \"transaction_details\": null,\n            \"transaction_id\": \"01HYCM0QHEPEC98MN9NBDCA47C\",\n            \"updated_at\": \"2024-05-21T03:44:02.882Z\"\n        }\n    ]\n}"}],"_postman_id":"cda645e6-bb83-4958-a435-5d80a6ce0e56"},{"name":"/transactions/{account_id}","event":[{"listen":"test","script":{"id":"c12754fe-9926-4bd3-8ea4-c485e2a97eca","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.transactions) {","    console.log(\"Number of transactions for selected account_id:\", jsonData.transactions.length);","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Transactions or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"transactions\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"accounts\": {","                \"type\":\"array\",","                \"items\": {","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"account_currency\": {\"type\":\"string\"},","                        \"account_holder_name\": {\"type\":\"string\"},","                        \"account_id\": {\"type\":\"string\"},","                        \"account_name\": {\"type\":\"string\"},","                        \"account_nickname\": {\"type\":\"string\"},","                        \"account_number_masked\": {\"type\": \"string\"},","                        \"account_type\": {","                            \"type\":\"object\",                    ","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"subtype\": {\"type\":\"string\"},","                                \"type\": {\"type\":\"string\"}","                            }","                        },","                        \"balance\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"currency\": {\"type\":\"string\"},","                                \"raw\": {\"type\":\"string\"},","                                \"value\": {\"type\":\"number\"}","                            },","                            \"required\": [","                                //\"currency\",","                                //\"raw\",","                                \"value\"","                            ]","                        },","                        \"country\": {\"type\": \"string\"},","                        \"created_at\": {\"type\":\"string\"},","                        \"group_id\": {\"type\":\"string\"},","                        \"is_closed\": {\"type\":\"boolean\"},","                        \"is_excluded\": {\"type\":\"boolean\"},","                        \"is_parent\": {\"type\":\"boolean\"},","                        \"metadata\": {\"type\":\"object\"},","                        \"statement_balance\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"currency\": {\"type\":\"string\"},","                                \"raw\": {\"type\":\"string\"},","                                \"value\": {\"type\":\"number\"}","                            },","                            \"required\": [","                                //\"currency\",","                                //\"raw\",","                                \"value\"","                            ]","                        },","                        \"updated_at\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        //\"account_currency\",","                        \"account_id\",","                        \"account_name\",","                        \"account_type\",","                        \"balance\",","                        \"created_at\",","                        \"group_id\",","                        \"is_closed\",","                        \"is_excluded\",","                        \"is_parent\",","                        \"statement_balance\",","                        \"updated_at\"","                    ]","                }","            },","            \"institution\": {\"type\":\"object\"},","            \"login_identity\": {\"type\":\"object\"},","            \"total_transactions\": {\"type\":\"number\"},","            \"transactions\": {","                \"type\":\"array\",","                \"items\": {","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"account_id\": {\"type\":\"string\"}, ","                        \"amount\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"currency\": {\"type\":\"string\"}, ","                                \"raw\": {\"type\":\"string\"}, ","                                \"value\": {\"type\":\"number\"}","                            },","                            \"required\": [","                                \"currency\",","                                \"raw\",","                                \"value\"","                            ]","                        },","                        \"categories\": {\"type\": [\"object\", \"null\"]},","                        \"category_predictions\": {\"type\": [\"object\", \"null\"]},","                        \"created_at\": {\"type\":\"string\"}, ","                        \"description\": {\"type\":\"string\"},","                        \"is_pending\": {\"type\":\"boolean\"},","                        \"posted_date\": {\"type\":\"string\"}, ","                        \"running_balance\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"currency\": {\"type\":\"string\"},","                                \"raw\": {\"type\":\"string\"},","                                \"value\": {\"type\":\"number\"}","                            },","                            \"required\": [","                                \"currency\",","                                \"raw\",","                                \"value\"","                            ]","                        },","                        \"transaction_date\": {\"type\": \"string\"},","                        \"transaction_details\": {\"type\": [\"object\", \"null\"]},","                        \"transaction_id\": {\"type\":\"string\"}, ","                        \"transaction_reference\": {\"type\": \"string\"},","                        \"transaction_time\": {\"type\":\"string\"}, ","                        \"updated_at\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"account_id\",","                        \"amount\",","                        \"categories\",","                        \"category_predictions\",","                        \"created_at\",","                        \"description\",","                        \"is_pending\",","                        \"posted_date\",","                        \"transaction_id\",","                        \"updated_at\"","                    ]","                }","            }","        },","        \"required\" : [","            \"accounts\",","            \"institution\",","            \"login_identity\",","            \"total_transactions\",","            \"transactions\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - START"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"dbb94a5d-a565-4fb2-ae3b-3d25115dd787","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/transactions/{{account_id}}?offset=0&limit=100","description":"<p>Retrieve all Transactions under an Account (using a specific <code>account_id</code>).</p>\n<p><strong>Authorization</strong>: <code>login_identity_token</code></p>\n<h2 id=\"response-fields\">Response fields</h2>\n<p>Same as <code>GET /transactions</code>. The returned <code>accounts</code> and <code>transactions</code> objects and <code>total_transactions</code> field include only records associated with the specified <code>account_id</code>.</p>\n","urlObject":{"path":["transactions","{{account_id}}"],"host":["https://api.prod.finverse.net"],"query":[{"description":{"content":"<p>Optional, default is 0</p>\n","type":"text/plain"},"key":"offset","value":"0"},{"description":{"content":"<p>Optional, default is 500, max is 1000</p>\n","type":"text/plain"},"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"34703b5e-ef72-430c-885a-29c2a67ae3cc","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)"}],"url":{"raw":"https://api.prod.finverse.net/transactions/{{account_id}}?offset=0&limit=10","host":["https://api.prod.finverse.net"],"path":["transactions","{{account_id}}"],"query":[{"key":"offset","value":"0","description":"Optional, default is 0"},{"key":"limit","value":"10","description":"Optional, default is 500, max is 1000"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1716263202"},{"key":"Date","value":"Tue, 21 May 2024 03:46:42 GMT"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"accounts\": [\n        {\n            \"account_currency\": \"HKD\",\n            \"account_id\": \"01HYCM02EGRVHEFNNYP77ENF92\",\n            \"account_name\": \"HKD Checking\",\n            \"account_number_masked\": \"123XXXX89\",\n            \"account_type\": {\n                \"subtype\": \"CURRENT\",\n                \"type\": \"DEPOSIT\"\n            },\n            \"balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"70013.12\",\n                \"value\": 70013.12\n            },\n            \"created_at\": \"2024-05-21T03:44:22.000Z\",\n            \"group_id\": \"01HYCM02FECX9GV4WCSH1C7QC1\",\n            \"is_closed\": false,\n            \"is_excluded\": false,\n            \"is_parent\": false,\n            \"statement_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"70013.12\",\n                \"value\": 70013.12\n            },\n            \"updated_at\": \"2024-05-21T03:44:22.000Z\"\n        }\n    ],\n    \"institution\": {\n        \"countries\": [\n            \"HKG\",\n            \"IDN\",\n            \"MYS\",\n            \"PHL\",\n            \"SGP\",\n            \"THA\",\n            \"VNM\"\n        ],\n        \"institution_id\": \"testbank\",\n        \"institution_name\": \"Testbank\",\n        \"portal_name\": \"Testbank Online Banking\"\n    },\n    \"login_identity\": {\n        \"last_session_id\": \"01HYCKZDZ1HPG5B5C96ARX46NA\",\n        \"login_identity_id\": \"01HYCKZDWF7XEZZH3SN9GDMXF7\",\n        \"status\": \"DATA_RETRIEVAL_COMPLETE\"\n    },\n    \"total_transactions\": 108,\n    \"transactions\": [\n        {\n            \"account_id\": \"01HYCM02EGRVHEFNNYP77ENF92\",\n            \"amount\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"523.00\",\n                \"value\": 523\n            },\n            \"categories\": null,\n            \"category_predictions\": null,\n            \"created_at\": \"2024-05-21T03:44:02.882Z\",\n            \"description\": \"Transfer\\nFPS/PILL Jane/FRN20240312PAYC0111547753897\",\n            \"is_pending\": false,\n            \"posted_date\": \"2024-11-11\",\n            \"running_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"70,013.12\",\n                \"value\": 70013.12\n            },\n            \"transaction_details\": {\n                \"counterparty_account_number\": \"01HYCM0QEJKNQEYTHKK6Z4R16Y\",\n                \"counterparty_name\": \"PILL Jane\",\n                \"fps_reference\": \"FRN20240312PAYC0111547753897\",\n                \"subtype\": \"FPS\",\n                \"type\": \"Transfer\"\n            },\n            \"transaction_id\": \"01HYCM0QH9RAJRGQNQ90CV8DF0\",\n            \"transaction_reference\": \"67891234\",\n            \"transaction_time\": \"2024-11-11T15:28:31.000Z\",\n            \"updated_at\": \"2024-05-21T03:44:02.882Z\"\n        },\n        {\n            \"account_id\": \"01HYCM02EGRVHEFNNYP77ENF92\",\n            \"amount\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"-40.00\",\n                \"value\": -40\n            },\n            \"categories\": null,\n            \"category_predictions\": null,\n            \"created_at\": \"2024-05-21T03:44:02.882Z\",\n            \"description\": \"BAT STARBUCKS@CITY SI NG 25MAY 4628-1234-5678-1234\",\n            \"is_pending\": false,\n            \"posted_date\": \"2023-06-30\",\n            \"running_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"69,490.12\",\n                \"value\": 69490.12\n            },\n            \"transaction_details\": null,\n            \"transaction_id\": \"01HYCM0QHCFRSAZZ0A5KM3G4NM\",\n            \"updated_at\": \"2024-05-21T03:44:02.882Z\"\n        },\n        {\n            \"account_id\": \"01HYCM02EGRVHEFNNYP77ENF92\",\n            \"amount\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"-200.00\",\n                \"value\": -200\n            },\n            \"categories\": null,\n            \"category_predictions\": null,\n            \"created_at\": \"2024-05-21T03:44:02.882Z\",\n            \"description\": \"BEST MART 101: Jul_16\",\n            \"is_pending\": false,\n            \"posted_date\": \"2022-07-16\",\n            \"running_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"69,530.12\",\n                \"value\": 69530.12\n            },\n            \"transaction_details\": null,\n            \"transaction_id\": \"01HYCM0QHEPEC98MN9NBDCA47C\",\n            \"updated_at\": \"2024-05-21T03:44:02.882Z\"\n        }\n    ]\n}"},{"id":"fb61e32f-8643-4633-aa6b-36b0667557a3","name":"Error (Account not found)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"url":{"raw":"https://api.prod.finverse.net/transactions/{{account_id}}2?offset=0&limit=100","host":["https://api.prod.finverse.net"],"path":["transactions","{{account_id}}2"],"query":[{"key":"offset","value":"0","description":"Optional, default is 0"},{"key":"limit","value":"100","description":"Optional, default is 500, max is 1000"}]}},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Thu, 08 Dec 2022 18:16:56 GMT"},{"key":"Content-Length","value":"241"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40004,\n        \"error_code\": \"ACCOUNT_NOT_FOUND\",\n        \"message\": \"account_id cannot be found. Resource does not exist, has been deleted, or is no longer accessible.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"dbb94a5d-a565-4fb2-ae3b-3d25115dd787"}],"id":"6e38c873-b81f-4798-9f86-d58e25986bb2","description":"<p>Note: <code>GET</code> data requests read <em>previously retrieved</em> data from Finverse's database. To request Finverse to retrieve new data from connected institutions, please use the <code>POST</code> requests under \"<strong>Data Refresh</strong>\".</p>\n<p>See \"<em>Guidance: When to fetch data from Finverse</em>\" under <strong>04 - Login Identity</strong> for details on when data is available for fetching.</p>\n","event":[{"listen":"prerequest","script":{"id":"e20e3ae4-ac2a-4f9e-8a62-39660d0a85f6","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8e5f6cf2-2295-4f81-b01c-0fbb50945e96","type":"text/javascript","exec":[""]}}],"_postman_id":"6e38c873-b81f-4798-9f86-d58e25986bb2"},{"name":"05 - Account Numbers","item":[{"name":"/account_numbers/{account_id}","event":[{"listen":"test","script":{"id":"60f9a876-52f9-4566-bbf7-943561203f24","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.account_number) {","    console.log(\"Account number:\", jsonData.account_number.number);","    console.log(\"Account number (raw):\", jsonData.account_number.raw);","};","","","//STANDARD TESTS - START","//HTTP response status","if (pm.environment.get(\"is_account_numbers_enabled\") === \"true\") {","    pm.test(\"Status code is 200\", function () {","        pm.response.to.have.status(200);","    })","};","","//Received Account Number or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"account_number\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additional_properties\": false,","        \"properties\": {","            \"account\": {\"type\":\"object\"},","            \"account_number\": {","                \"type\":\"object\",","                \"additional_properties\": false,","                \"properties\": {","                    \"account_id\": {\"type\":\"string\"},","                    \"number\": {\"type\":\"string\"},","                    \"raw\": {\"type\":\"string\"}","                },","                \"required\": [","                    \"account_id\",","                    \"number\",","                    \"raw\"","                ]","            },","            \"institution\": {\"type\":\"object\"},","            \"login_identity\": {\"type\":\"object\"},","            \"payment_details\": {","                \"type\":\"array\",","                \"items\": {","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"bank_address\": {\"type\":\"string\"},","                        \"bank_country\": {\"type\":\"string\"},","                        \"bank_fullname\": {\"type\":\"string\"},","                        \"bank_shortname\": {\"type\":\"string\"},","                        \"bic\": {\"type\":\"string\"},","                        \"format\": {\"type\":\"string\"},","                        \"other_info\": {\"type\":\"object\"}","                    },","                    \"required\": [","                        \"bank_address\",","                        \"bank_country\",","                        \"bank_fullname\",","                        \"bank_shortname\",","                        \"bic\",","                        \"format\",","                        \"other_info\"","                    ]","                },","            },","        },","        \"required\" : [","            \"account\",","            \"account_number\",","            \"institution\",","            \"login_identity\",","            \"payment_details\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","    pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","","//[NO_DOC] ADDITIONAL DATA RETRIEVAL TESTS - START","if (pm.environment.get(\"is_account_numbers_enabled\") === \"true\") {","","    if (pm.environment.get(\"run_data_retrieval_tests\") === \"true\") {","","        pm.test(\"Account number is not null\", function() {","            pm.expect(jsonData.account_number.number.value).to.not.eql([\"null\", undefined])","        })","","    }","","};","//[NO_DOC] ADDITIONAL DATA RETRIEVAL TESTS - END"],"type":"text/javascript"}}],"id":"c21dd1be-6f4b-40f9-b452-bd008b83d725","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/account_numbers/{{account_id}}","description":"<p>Retrieve account number information for a specific account (using a specific <code>account_id</code>).</p>\n<p><strong>Authorization</strong>: <code>login_identity_token</code></p>\n<h2 id=\"response-fields\">Response fields</h2>\n<h3 id=\"account\">account</h3>\n<p>Full <code>account</code> object, containing account-level balances &amp; metadata for the requested account. See <code>GET /accounts</code> for details</p>\n<h3 id=\"account_number\">account_number</h3>\n<p>Full <code>account_number</code> object, containing account number details for the requested account.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>account_id</td>\n<td>string (ULID)</td>\n<td>Finverse account ID (see <code>GET /accounts</code>)</td>\n</tr>\n<tr>\n<td>number</td>\n<td>string</td>\n<td>Account number provided by the institution (omitting any spaces/symbols)</td>\n</tr>\n<tr>\n<td>raw</td>\n<td>string</td>\n<td>Raw account number, in it's original format (as reported by the institution)</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"institution\">institution</h3>\n<p>Summary Institutions object. See <code>GET /institutions</code> for details.</p>\n<h3 id=\"login_identity\">login_identity</h3>\n<p>Summary Login Identity object. See <code>GET /login_identity</code> for details.</p>\n<h3 id=\"payment_details\">payment_details</h3>\n<p>Full <code>payment_details</code> array, containing bank routing details for the requested account.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>bank_address</td>\n<td>string</td>\n<td>Institution's address (typically of the head office.</td>\n</tr>\n<tr>\n<td>bank_country</td>\n<td>string</td>\n<td>Institution's country (e.g. \"Singapore\")</td>\n</tr>\n<tr>\n<td>bank_fullname</td>\n<td>string</td>\n<td>Institution's full legal name.</td>\n</tr>\n<tr>\n<td>bank_shortname</td>\n<td>string</td>\n<td>Institution's short name / business name.</td>\n</tr>\n<tr>\n<td>bic</td>\n<td>string</td>\n<td>Institution's BIC code.</td>\n</tr>\n<tr>\n<td>format</td>\n<td>enum</td>\n<td>Type of BIC code provided. Possible values: <code>SWIFT</code>.</td>\n</tr>\n<tr>\n<td>other_info</td>\n<td>object</td>\n<td>Additional routing details for the institution (e.g. local bank/branch code). Reserved for future use.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["account_numbers","{{account_id}}"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"27336b79-1aa8-4ccd-94a5-ec68778aca47","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"url":"https://api.prod.finverse.net/account_numbers/{{account_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-67819048de9e5a90c56467c28a19c253-367b5b6b5a2329cc-00"},{"key":"tracestate","value":""},{"key":"vary","value":"Origin"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Wed, 01 Sep 2021 06:07:34 GMT"},{"key":"content-length","value":"792"},{"key":"x-envoy-upstream-service-time","value":"182"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"account\": {\n        \"account_currency\": \"HKD\",\n        \"account_id\": \"01FEFKRGCTNYMSTDZWM6WFZVZS\",\n        \"account_name\": \"HKD Checking\",\n        \"balance\": {\n            \"currency\": \"HKD\",\n            \"raw\": \"70013.12\",\n            \"value\": 70013.12\n        },\n        \"created_at\": \"2021-09-01T02:42:12.000Z\",\n        \"group_id\": \"01FEFKRGDB5NBPKRQA4CB7HJ30\",\n        \"is_closed\": false,\n        \"is_excluded\": false,\n        \"is_parent\": false,\n        \"statement_balance\": {\n            \"currency\": \"HKD\",\n            \"raw\": \"70013.12\",\n            \"value\": 70013.12\n        },\n        \"updated_at\": \"2021-09-01T02:42:12.000Z\"\n    },\n    \"account_number\": {\n        \"account_id\": \"01FEFKRGCTNYMSTDZWM6WFZVZS\",\n        \"number\": \"405123456789\",\n        \"raw\": \"405-123456-789\"\n    },\n    \"institution\": {\n        \"countries\": [\n            \"HKG\"\n        ],\n        \"institution_id\": \"hsbc-hk\",\n        \"institution_name\": \"HSBC (HK) - Personal\",\n        \"portal_name\": \"HSBC Personal Account\"\n    },\n    \"login_identity\": {\n        \"login_identity_id\": \"01FEFKR1GSJCRDHEN0FZ3DG9GF\",\n        \"status\": \"DATA_RETRIEVAL_COMPLETE\"\n    },\n    \"payment_details\": [\n        {\n            \"bank_address\": \"Head Office, 1 Queen's Road Central, Hong Kong\",\n            \"bank_country\": \"Hong Kong\",\n            \"bank_fullname\": \"The Hongkong and Shanghai Banking Corporation Limited\",\n            \"bank_shortname\": \"HSBC (Hong Kong)\",\n            \"bic\": \"HSBCHKHHHKH\",\n            \"format\": \"SWIFT\",\n            \"other_info\": {}\n        }\n    ]\n}"},{"id":"30f71ab5-63d5-4bdd-a0f9-ef5bb310fb2a","name":"Error (numbers not found)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"url":"https://api.prod.finverse.net/account_numbers/{{account_id}}"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{account_id}"},{"key":"Date","value":"Thu, 08 Dec 2022 19:17:01 GMT"},{"key":"Content-Length","value":"407"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40004,\n        \"error_code\": \"ACCOUNT_NUMBERS_UNAVAILABLE\",\n        \"message\": \"No account numbers are associated with the requested account(s). We may not be able to retrieve account numbers for this account type, or there may have been an error retrieving account numbers for this account (please review product_status for details).\",\n        \"request_id\": \"{account_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"8a87d4a6-9fcc-4196-a908-fc0b46fa7809","name":"Error (product not supported)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"url":"https://api.prod.finverse.net/account_numbers/{{account_id}}"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Thu, 08 Dec 2022 19:06:37 GMT"},{"key":"Content-Length","value":"333"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40012,\n        \"details\": \"Account numbers are not supported for this bank\",\n        \"error_code\": \"PRODUCT_NOT_SUPPORTED\",\n        \"message\": \"Requested product is not yet supported for this institution. Please refer to Institutions list for details on products supported.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"7156be3a-dde3-4ca0-8e98-21721b28ccee","name":"Error (Account not found)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"}],"url":"https://api.prod.finverse.net/account_numbers/{{account_id}}2"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Thu, 08 Dec 2022 18:13:24 GMT"},{"key":"Content-Length","value":"241"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40004,\n        \"error_code\": \"ACCOUNT_NOT_FOUND\",\n        \"message\": \"account_id cannot be found. Resource does not exist, has been deleted, or is no longer accessible.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"c21dd1be-6f4b-40f9-b452-bd008b83d725"}],"id":"7868efe3-c8a7-42de-8c66-302cb8b195e4","description":"<p>Note: <code>GET</code> data requests read <em>previously retrieved</em> data from Finverse's database. To request Finverse to retrieve new data from connected institutions, please use the <code>POST</code> requests under \"<strong>Data Refresh</strong>\".</p>\n<p>See \"<em>Guidance: When to fetch data from Finverse</em>\" under <strong>04 - Login Identity</strong> for details on when data is available for fetching.</p>\n","_postman_id":"7868efe3-c8a7-42de-8c66-302cb8b195e4"},{"name":"06 - Balance History","item":[{"name":"/balance_history/{account_id}","event":[{"listen":"test","script":{"id":"17bfb187-0c48-4cd7-8494-54572a5b16f4","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.balance_history) {","    console.log(\"Number of balance history records:\", jsonData.balance_history.length);","};","","//STANDARD TESTS - START","//HTTP response status","if (pm.environment.get(\"is_balance_history_enabled\") === \"true\") {","    pm.test(\"Status code is 200\", function () {","        pm.response.to.have.status(200);","    })","};","","//Received Balance History or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"balance_history\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"account\": {\"type\":\"object\"},","            \"balance_history\": {","                \"type\":\"array\",","                \"items\": {","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"amount\": {\"type\":\"number\"},","                        \"currency\": {\"type\":\"string\"},","                        \"date\": {\"type\":\"string\"},","                    },","                    \"required\": [","                        \"amount\",","                        \"currency\",","                        \"date\"","                    ]","                }","            },","            \"institution\": {\"type\":\"object\"},","            \"login_identity\": {\"type\":\"object\"},","            \"source\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"account\",","            \"balance_history\",","            \"institution\",","            \"login_identity\",","            \"source\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","    pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","","//[NO_DOC] ADDITIONAL DATA RETRIEVAL TESTS - START","if (pm.environment.get(\"is_balance_history_enabled\") === \"true\") {","","    if (pm.environment.get(\"run_data_retrieval_tests\") === \"true\") {","        ","        pm.test(\"At least 1 balance_history found\", function() {","            pm.expect(jsonData.balance_history.length).to.be.at.least(1)","        });","","    }","","};","//[NO_DOC] ADDITIONAL DATA RETRIEVAL TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"5d438fa1-57aa-41de-98cd-64f5a591ea4f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/balance_history/{{account_id}}","description":"<p>Retrieve Balance History information for a specific Account (using a specific <code>account_id</code>).</p>\n<p><strong>Authorization</strong>: <code>login_identity_token</code></p>\n<h2 id=\"request-parameters-optional\">Request parameters (optional)</h2>\n<p>Use the following optional URL parameters to customize the source of balance history records.</p>\n<p>(e.g. <code>GET /balance_history/{account_id}?source=COMPUTED</code>)</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>source</td>\n<td>ENUM</td>\n<td>Toggles whether balance history is sourced from the institution's balance data directly, or is calculated by Finverse based on transactions data. Accepted values: <code>INSTITUTION</code> (default value if omitted), <code>COMPUTED</code></td>\n</tr>\n</tbody>\n</table>\n</div><p>Notes:</p>\n<ul>\n<li><code>source=INSTITUTION</code>: Default behaviour. Returns Balance history as reported by the institution. Available for all institutions where Balance History product is supported.</li>\n<li><code>source=COMPUTED</code>: Alternative behaviour. Returns balance history by computing based on the transactions for that specific account. Available for all institutions where Transactions product is supported.</li>\n</ul>\n<h2 id=\"response-fields\">Response fields</h2>\n<h3 id=\"accounts\">accounts</h3>\n<p>Full Account object for the specified <code>account_id</code>. See <code>GET /accounts</code> for details.</p>\n<h3 id=\"balance_history-array\">balance_history (array)</h3>\n<p>Full <code>balance_history</code> array, containing a history of end-of-day account balances on specified dates. Balances are returned in reverse-chronological order (i.e. most recent balance first).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>amount</td>\n<td>number</td>\n<td>Balance amount (as of the end of day on the specified <code>date</code>). Sign follows financial statement conventions (positive sign: money received / income; negative sign: money sent / expenses).</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code)</td>\n<td>Currency of the balance <code>amount</code></td>\n</tr>\n<tr>\n<td>date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), nullable</td>\n<td>Date of the balance <code>amount</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"institution\">institution</h3>\n<p>Summary Institution object. See <code>GET /institutions</code> for details.</p>\n<h3 id=\"login_identity\">login_identity</h3>\n<p>Summary Login Identity object. See <code>GET /login_identity</code> for details.</p>\n","urlObject":{"path":["balance_history","{{account_id}}"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"7bbf3d76-9d23-4d9c-b12a-57dd066099c0","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/balance_history/{{account_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-9544ef0ccdc72337a8573b5b392c5871-889b2c7abfc81c65-01"},{"key":"vary","value":"Origin"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Fri, 29 Oct 2021 02:30:37 GMT"},{"key":"content-length","value":"1155"},{"key":"x-envoy-upstream-service-time","value":"34"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"account\": {\n        \"account_currency\": \"HKD\",\n        \"account_id\": \"01GX8089798E6QP42V164FFQJG\",\n        \"account_name\": \"HKD Statement Savings\",\n        \"account_number_masked\": \"111XXXXX6666\",\n        \"account_type\": {\n            \"subtype\": \"SAVINGS\",\n            \"type\": \"DEPOSIT\"\n        },\n        \"balance\": {\n            \"currency\": \"HKD\",\n            \"raw\": \"3333.33\",\n            \"value\": 3333.33\n        },\n        \"created_at\": \"2023-04-05T06:04:21.000Z\",\n        \"group_id\": \"01GX80897FBK8S67SBWYZQEE97\",\n        \"is_closed\": false,\n        \"is_excluded\": false,\n        \"is_parent\": false,\n        \"statement_balance\": {\n            \"currency\": \"HKD\",\n            \"raw\": \"3333.33\",\n            \"value\": 3333.33\n        },\n        \"updated_at\": \"2023-04-05T06:04:21.000Z\"\n    },\n    \"balance_history\": [\n        {\n            \"amount\": 3333.33,\n            \"currency\": \"HKD\",\n            \"date\": \"2020-11-22\"\n        },\n        {\n            \"amount\": 2913.33,\n            \"currency\": \"HKD\",\n            \"date\": \"2020-11-12\"\n        },\n        {\n            \"amount\": 3013.33,\n            \"currency\": \"HKD\",\n            \"date\": \"2020-11-01\"\n        },\n        {\n            \"amount\": 19806.58,\n            \"currency\": \"HKD\",\n            \"date\": \"2020-09-18\"\n        },\n        {\n            \"amount\": 19806.58,\n            \"currency\": \"HKD\",\n            \"date\": \"2020-09-10\"\n        },\n        {\n            \"amount\": 3083.02,\n            \"currency\": \"HKD\",\n            \"date\": \"2020-09-08\"\n        },\n        {\n            \"amount\": 19791.03,\n            \"currency\": \"HKD\",\n            \"date\": \"2020-08-24\"\n        },\n        {\n            \"amount\": 19791.02,\n            \"currency\": \"HKD\",\n            \"date\": \"2020-08-17\"\n        }\n    ],\n    \"institution\": {\n        \"countries\": [\n            \"HKG\",\n            \"IDN\",\n            \"MYS\",\n            \"PHL\",\n            \"SGP\",\n            \"THA\",\n            \"VNM\"\n        ],\n        \"institution_id\": \"testbank\",\n        \"institution_name\": \"Testbank (HK)\",\n        \"portal_name\": \"Testbank Online Banking\"\n    },\n    \"login_identity\": {\n        \"last_session_id\": \"01GX8083VWHVK7SREZ3JRZQYMV\",\n        \"login_identity_id\": \"01GX8083SFS7DSJT8K0XKGDPH9\",\n        \"status\": \"DATA_RETRIEVAL_COMPLETE\"\n    },\n    \"source\": \"INSTITUTION\"\n}"},{"id":"3a911626-6367-4fe1-be85-8e10daa4bc74","name":"Error (no balance history found for account_id)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/balance_history/{{account_id}}"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-10838703ede551e544b9c7ec3468581d-bfb213ead8317810-01"},{"key":"vary","value":"Origin"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Thu, 06 Jan 2022 10:13:05 GMT"},{"key":"content-length","value":"130"},{"key":"x-envoy-upstream-service-time","value":"20"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40101,\n        \"message\": \"The given accountId does have balance history available\",\n        \"name\": \"BALANCE_HISTORY_UNAVAILABLE\"\n    }\n}"},{"id":"78f004dd-4bb6-4606-95f4-665f4739977d","name":"Error (product not supported)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/balance_history/{{account_id}}"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Thu, 08 Dec 2022 18:40:13 GMT"},{"key":"Content-Length","value":"337"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40012,\n        \"details\": \"Balance history is not supported for this bank\",\n        \"error_code\": \"PRODUCT_NOT_SUPPORTED\",\n        \"message\": \"Requested product is not yet supported for this institution. Please refer to Institutions list for details on products supported.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"63980d32-6936-40ba-90e7-db35b692dfd6","name":"Error (Account not found)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/balance_history/{{account_id}}2"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Thu, 08 Dec 2022 18:15:09 GMT"},{"key":"Content-Length","value":"241"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40004,\n        \"error_code\": \"ACCOUNT_NOT_FOUND\",\n        \"message\": \"account_id cannot be found. Resource does not exist, has been deleted, or is no longer accessible.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"5d438fa1-57aa-41de-98cd-64f5a591ea4f"}],"id":"428e7613-a138-4b9c-b468-86788fbf8f4e","description":"<p>Note: <code>GET</code> data requests read <em>previously retrieved</em> data from Finverse's database. To request Finverse to retrieve new data from connected institutions, please use the <code>POST</code> requests under \"<strong>Data Refresh</strong>\".</p>\n<p>See \"<em>Guidance: When to fetch data from Finverse</em>\" under <strong>04 - Login Identity</strong> for details on when data is available for fetching.</p>\n","_postman_id":"428e7613-a138-4b9c-b468-86788fbf8f4e"},{"name":"07 - Identity","item":[{"name":"/identity","event":[{"listen":"test","script":{"id":"1942fa88-0fb8-4401-a11a-f16a0bcea625","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.identity) {","    console.log(\"Name0 full_name:\", jsonData.identity.names[0].full_name);","    console.log(\"Name0 raw name:\", jsonData.identity.names[0].raw);","};","","","//STANDARD TESTS - START","//HTTP response status","if (pm.environment.get(\"is_identity_enabled\") === \"true\") {","    pm.test(\"Status code is 200\", function () {","        pm.response.to.have.status(200);","    })","};","","//Received Identity or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"identity\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"identity\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"addresses\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"account_ids\": {","                                    \"type\":\"array\",","                                    \"items\": {\"type\":\"string\"}","                                },","                                \"city\": {\"type\": \"string\"},","                                \"country\": {\"type\": \"string\"},","                                \"district\": {\"type\": \"string\"},","                                \"full_address\": {\"type\": \"string\"},","                                \"province\": {\"type\": \"string\"},","                                \"raw\": {\"type\":\"string\"},","                                \"source\": {\"type\":\"string\"},","                                \"source_ids\": {","                                    \"type\":\"array\",","                                    \"items\": {\"type\":\"string\"}","                                },","                                \"street_address\": {\"type\": \"string\"},","                                \"ward\": {\"type\": \"string\"}","                            },","                            \"required\": []","                        },","                    },","                    \"date_of_births\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"account_ids\": {","                                    \"type\":\"array\",","                                    \"items\": {\"type\":\"string\"}","                                },","                                \"date_of_birth\": {\"type\": \"string\"},","                                \"masked_date_of_birth\": {\"type\": \"string\"},","                                \"raw\": {\"type\":\"string\"},","                                \"source\": {\"type\":\"string\"},","                                \"source_ids\": {","                                    \"type\":\"array\",","                                    \"items\": {\"type\":\"string\"}","                                },","                            },","                            \"required\": []","                        },","                    },                    ","                    \"emails\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"account_ids\": {","                                    \"type\":\"array\",","                                    \"items\": {\"type\":\"string\"}","                                },","                                \"email\": {\"type\": \"string\"},","                                \"masked_email\": {\"type\": \"string\"},","                                \"raw\": {\"type\":\"string\"},","                                \"source\": {\"type\":\"string\"},","                                \"source_ids\": {","                                    \"type\":\"array\",","                                    \"items\": {\"type\":\"string\"}","                                },","                            },","                            \"required\": []","                        },","                    },","                    \"names\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"account_ids\": {","                                    \"type\":\"array\",","                                    \"items\": {\"type\":\"string\"}","                                },","                                \"first_name\": {\"type\": \"string\"},","                                \"full_name\": {\"type\": \"string\"},","                                \"last_name\": {\"type\": \"string\"},","                                \"other_name\": {\"type\": \"string\"},","                                \"raw\": {\"type\":\"string\"},","                                \"source\": {\"type\":\"string\"},","                                \"source_ids\": {","                                    \"type\":\"array\",","                                    \"items\": {\"type\":\"string\"}","                                },","                            },","                            \"required\": [","                                \"account_ids\",","                                \"full_name\",","                                \"raw\",","                                \"source\",","                                \"source_ids\"","                            ]","                        },","                    },","                    \"phone_numbers\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"account_ids\": {","                                    \"type\":\"array\",","                                    \"items\": {\"type\":\"string\"}","                                },","                                \"masked_phone\": {\"type\": \"string\"},","                                \"mobile_phone\": {\"type\": \"string\"},","                                \"raw\": {\"type\":\"string\"},","                                \"source\": {\"type\":\"string\"},","                                \"source_ids\": {","                                    \"type\":\"array\",","                                    \"items\": {\"type\":\"string\"}","                                },","                            },","                            \"required\": []","                        },","                    }","                },","                \"required\": [","                    \"addresses\",","                    \"date_of_births\",","                    \"emails\",","                    \"names\",","                    \"phone_numbers\"","                ]","            },","            \"institution\": {\"type\":\"object\"},","            \"login_identity\": {\"type\":\"object\"}","        },","        \"required\" : [","            \"identity\",","            \"institution\",","            \"login_identity\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","    pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","","//[NO_DOC] ADDITIONAL DATA RETRIEVAL TESTS - START","if (pm.environment.get(\"is_identity_enabled\") === \"true\") {","","    if (pm.environment.get(\"run_data_retrieval_tests\") === \"true\") {","","        pm.test(\"At least 1 name found\", function() {","            pm.expect(jsonData.identity.names.length).to.be.at.least(1)","        });","","        pm.test(\"Name0 full_name is not null\", function() {","            pm.expect(jsonData.identity.names[0].full_name.value).to.not.eql([\"null\", undefined])","        });","","        pm.test(\"Name0 source is expected value\", function() {","            pm.expect(jsonData.identity.names[0].source).to.be.oneOf([\"ONLINE_BANKING\", \"STATEMENTS\"])","        })","","    };","","};","//[NO_DOC] ADDITIONAL DATA RETRIEVAL TESTS - END"],"type":"text/javascript"}}],"id":"bd1c49a9-66ba-4d9b-a827-cc7b2c4fe779","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/identity","description":"<p>Retrieve all Identity information for a Login Identity (using a specific <code>login_identity_token</code>).</p>\n<p><strong>Authorization</strong>: <code>login_identity_token</code></p>\n<h2 id=\"response-fields\">Response fields</h2>\n<h3 id=\"identity\">identity</h3>\n<p>Full <code>identity</code> object, containing accountholder identity details (at a minimum: <code>names</code>) for the requested Login Identity.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>addresses</td>\n<td>array</td>\n<td>Accountholder's address, as reported by the institution (if available).</td>\n</tr>\n<tr>\n<td>date_of_births</td>\n<td>array</td>\n<td>Accountholder's date of birth, as reported by the institution (if available).</td>\n</tr>\n<tr>\n<td>emails</td>\n<td>array</td>\n<td>Accountholder's email, as reported by the institution (if available).</td>\n</tr>\n<tr>\n<td>names</td>\n<td>array</td>\n<td>Accountholder's name, as reported by the institution. This will always be available for Institutions listed as supporting Finverse's Identity product.</td>\n</tr>\n<tr>\n<td>phone_numbers</td>\n<td>array</td>\n<td>Accountholder's phone numbers, as reported by the institution (if available).</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"addresses\">addresses</h4>\n<p>Full <code>addresses</code> array, containing accountholder address information, as reported by the institution. Omitted if not available.</p>\n<h4 id=\"date_of_births\">date_of_births</h4>\n<p>Full <code>date_of_births</code> array, containing accountholder information, as reported by the institution. Omitted if not available.</p>\n<h4 id=\"emails\">emails</h4>\n<p>Full <code>emails</code> array, containing accountholder email information, as reported by the institution. Omitted if not available.</p>\n<h4 id=\"names\">names</h4>\n<p>Full <code>names</code> array, containing accountholder email information, as reported by the institution. Will always be returned for Institutions listed as supporting Finverse's Identity product.</p>\n<h4 id=\"phone_numbers\">phone_numbers</h4>\n<p>Full <code>phone_numbers</code> array, containing accountholder phone information, as reported by the institution. Omitted if not available.</p>\n<h3 id=\"institution\">institution</h3>\n<p>Summary Institutions object. See <code>GET /institutions</code> for details.</p>\n<h3 id=\"login_identity\">login_identity</h3>\n<p>Summary Login Identity object. See <code>GET /login_identity</code> for details.</p>\n","urlObject":{"path":["identity"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"35e2a961-d105-4ea8-8f60-46c493ca5103","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/identity"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Traceparent","value":"00-391069a335556075722999a8d13ce968-dedd9508cd68cb10-01"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Thu, 10 Mar 2022 10:50:11 GMT"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"identity\": {\n        \"addresses\": [\n            {\n                \"account_ids\": [\n                    \"01FXSPPETY5HNFGEZZ7FK4E32X\",\n                    \"01FXSPPEV1B1NH5XF063FC31VX\",\n                    \"01FXSPPETNWRJ4Y3XVDXESJFEC\",\n                    \"01FXSPPETRJ62KFG8CYJR2RAHV\",\n                    \"01FXSPPETVE1R5PPBYJG9DWVYF\"\n                ],\n                \"full_address\": \"69 A Building 4, Example Street, Unicorn Land\",\n                \"raw\": \"69 A Building 4, Example Street, Unicorn Land\",\n                \"source\": \"ONLINE_BANKING\",\n                \"source_ids\": [\n                    \"01FXSPPQ577NPJ115HXNH7V0KZ\"\n                ]\n            }\n        ],\n        \"date_of_births\": [\n            {\n                \"account_ids\": [\n                    \"01FXSPPETRJ62KFG8CYJR2RAHV\",\n                    \"01FXSPPETVE1R5PPBYJG9DWVYF\",\n                    \"01FXSPPETY5HNFGEZZ7FK4E32X\",\n                    \"01FXSPPEV1B1NH5XF063FC31VX\",\n                    \"01FXSPPETNWRJ4Y3XVDXESJFEC\"\n                ],\n                \"date_of_birth\": \"2006-09-01\",\n                \"raw\": \"2006-09-01\",\n                \"source\": \"ONLINE_BANKING\",\n                \"source_ids\": [\n                    \"01FXSPPQ577NPJ115HXNH7V0KZ\"\n                ]\n            }\n        ],\n        \"emails\": [\n            {\n                \"account_ids\": [\n                    \"01FXSPPETVE1R5PPBYJG9DWVYF\",\n                    \"01FXSPPETY5HNFGEZZ7FK4E32X\",\n                    \"01FXSPPEV1B1NH5XF063FC31VX\",\n                    \"01FXSPPETNWRJ4Y3XVDXESJFEC\",\n                    \"01FXSPPETRJ62KFG8CYJR2RAHV\"\n                ],\n                \"email\": \"test@mail.com\",\n                \"raw\": \"test@mail.com\",\n                \"source\": \"ONLINE_BANKING\",\n                \"source_ids\": [\n                    \"01FXSPPQ577NPJ115HXNH7V0KZ\"\n                ]\n            }\n        ],\n        \"names\": [\n            {\n                \"account_ids\": [\n                    \"01FXSPPEV1B1NH5XF063FC31VX\",\n                    \"01FXSPPETNWRJ4Y3XVDXESJFEC\",\n                    \"01FXSPPETVE1R5PPBYJG9DWVYF\",\n                    \"01FXSPPETY5HNFGEZZ7FK4E32X\"\n                ],\n                \"full_name\": \"John Doe\",\n                \"raw\": \"John Doe\",\n                \"source\": \"ONLINE_BANKING\",\n                \"source_ids\": [\n                    \"01FXSPPQ54716YSAECRPJBY8R1\"\n                ]\n            },\n            {\n                \"account_ids\": [\n                    \"01FXSPPETRJ62KFG8CYJR2RAHV\"\n                ],\n                \"full_name\": \"Joe\",\n                \"raw\": \"Joe\",\n                \"source\": \"ONLINE_BANKING\",\n                \"source_ids\": [\n                    \"01FXSPPQ54716YSAECRPJBY8R1\"\n                ]\n            },\n            {\n                \"account_ids\": [\n                    \"01FXSPPETRJ62KFG8CYJR2RAHV\",\n                    \"01FXSPPETVE1R5PPBYJG9DWVYF\",\n                    \"01FXSPPETY5HNFGEZZ7FK4E32X\",\n                    \"01FXSPPEV1B1NH5XF063FC31VX\",\n                    \"01FXSPPETNWRJ4Y3XVDXESJFEC\"\n                ],\n                \"full_name\": \"User Good\",\n                \"raw\": \"User Good\",\n                \"source\": \"ONLINE_BANKING\",\n                \"source_ids\": [\n                    \"01FXSPPQ577NPJ115HXNH7V0KZ\"\n                ]\n            }\n        ],\n        \"phone_numbers\": [\n            {\n                \"account_ids\": [\n                    \"01FXSPPETNWRJ4Y3XVDXESJFEC\",\n                    \"01FXSPPETRJ62KFG8CYJR2RAHV\",\n                    \"01FXSPPETVE1R5PPBYJG9DWVYF\",\n                    \"01FXSPPETY5HNFGEZZ7FK4E32X\",\n                    \"01FXSPPEV1B1NH5XF063FC31VX\"\n                ],\n                \"mobile_phone\": \"12344312\",\n                \"raw\": \"12344312\",\n                \"source\": \"ONLINE_BANKING\",\n                \"source_ids\": [\n                    \"01FXSPPQ577NPJ115HXNH7V0KZ\"\n                ]\n            }\n        ]\n    },\n    \"institution\": {\n        \"countries\": [\n            \"HKG\",\n            \"SGP\",\n            \"PHL\"\n        ],\n        \"institution_id\": \"testbank\",\n        \"institution_name\": \"TestBank HK\",\n        \"portal_name\": \"Test Bank Personal Account\"\n    },\n    \"login_identity\": {\n        \"last_session_id\": \"01FXSPP54CB7PPAFGK5FZ2WBTV\",\n        \"login_identity_id\": \"01FXSPP53F7C3C110C4GSQJEWC\",\n        \"status\": \"DATA_RETRIEVAL_COMPLETE\"\n    }\n}"},{"id":"c1eb0329-6494-42c4-a05f-2fa4c6a08dfa","name":"Error (Identity unavailable)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/identity"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-70218803320819593b3207aacd5a426d-1e19ffad1942563b-01"},{"key":"vary","value":"Origin"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Fri, 10 Sep 2021 09:04:59 GMT"},{"key":"content-length","value":"111"},{"key":"x-envoy-upstream-service-time","value":"38"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"error_code\": \"IDENTITY_UNAVAILABLE\",\n        \"message\": \"No identity information is associated with the requested Login Identity. We may not be able to retrieve identity for this user type, or there may have been an error retrieving identity for this user (please review product_status for details).\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"967cc934-b0f0-49a0-9d81-15f12207532b","name":"Error (product not supported)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/identity"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Thu, 08 Dec 2022 18:55:32 GMT"},{"key":"Content-Length","value":"325"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40012,\n        \"details\": \"Identity is not supported for this bank\",\n        \"error_code\": \"PRODUCT_NOT_SUPPORTED\",\n        \"message\": \"Requested product is not yet supported for this institution. Please refer to Institutions list for details on products supported.\",\n        \"request_id\": \"unique_id\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"bd1c49a9-66ba-4d9b-a827-cc7b2c4fe779"}],"id":"9e120de9-3a30-42af-ad47-6b7d6b24136a","description":"<p>Note: <code>GET</code> data requests read <em>previously retrieved</em> data from Finverse's database. To request Finverse to retrieve new data from connected institutions, please use the <code>POST</code> requests under \"<strong>Data Refresh</strong>\".</p>\n<p>See \"<em>Guidance: When to fetch data from Finverse</em>\" under <strong>04 - Login Identity</strong> for details on when data is available for fetching.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":false},"event":[{"listen":"prerequest","script":{"id":"13489843-16de-4ceb-b1d3-53915eea2ba8","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"bcebf596-787e-44ff-8ffb-a8462f77337e","type":"text/javascript","exec":[""]}}],"_postman_id":"9e120de9-3a30-42af-ad47-6b7d6b24136a"},{"name":"08 - Income","item":[{"name":"/income","event":[{"listen":"test","script":{"id":"2aa72cb5-a758-465e-b2d6-3ba503ea4125","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","//Extract sample account_id","if(jsonData.accounts) {","    if (jsonData.accounts.length >1 ","            && (jsonData.accounts[0].is_parent === true || jsonData.accounts[0].balance.value < 10)","        )","        {pm.environment.set(\"account_id\", jsonData.accounts[1].account_id)}","    else","        {pm.environment.set(\"account_id\", jsonData.accounts[0].account_id)};","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.accounts) {","    console.log(\"Number of accounts found:\", jsonData.accounts.length);","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Income or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"income\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"income\": {","                \"type\":\"array\",","                \"items\": {","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"income_streams\": {","                            \"type\":\"array\",","                            \"items\": {","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"account_id\": {\"type\":\"string\"}, ","                                    \"estimated_monthly_income\": {","                                        \"type\":\"object\",","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"amount\": {\"type\":\"number\"},","                                            \"currency\": {\"type\":\"string\"} ","                                        },","                                        \"required\": [","                                            \"amount\",","                                            \"currency\"","                                        ]","                                    },","                                    \"monthly_history\": {","                                        \"type\":\"array\",    ","                                        \"items\": {","                                            \"additionalProperties\": false,","                                            \"properties\": {","                                                \"estimated_income\": {","                                                    \"type\":\"object\",","                                                    \"additionalProperties\": false,","                                                    \"properties\": {","                                                        \"amount\": {\"type\":\"number\"},","                                                        \"currency\": {\"type\":\"string\"} ","                                                    },","                                                    \"required\": [","                                                        \"amount\",","                                                        \"currency\"","                                                    ]","                                                },","                                                \"month\": {\"type\":\"number\"},","                                                \"year\": {\"type\":\"number\"}","                                            },","                                            \"required\": [","                                                \"estimated_income\",","                                                \"month\",","                                                \"year\"","                                            ]","                                        }","                                    },","                                    \"transaction_count\": {\"type\":\"number\"}","                                },","                                \"required\": [","                                    \"account_id\",","                                    \"estimated_monthly_income\",","                                    \"monthly_history\",","                                    \"transaction_count\"","                                ]","                            }","                        },","                        \"income_total\": {","                            \"type\":\"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"estimated_monthly_income\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"amount\": {\"type\":\"number\"},","                                        \"currency\": {\"type\":\"string\"} ","                                    },","                                    \"required\": [","                                        \"amount\",","                                        \"currency\"","                                    ]","                                },","                                \"monthly_history\": {","                                    \"type\":\"array\",    ","                                    \"items\": {","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"estimated_income\": {","                                                \"type\":\"object\",","                                                \"additionalProperties\": false,","                                                \"properties\": {","                                                    \"amount\": {\"type\":\"number\"},","                                                    \"currency\": {\"type\":\"string\"} ","                                                },","                                                \"required\": [","                                                    \"amount\",","                                                    \"currency\"","                                                ]","                                            },","                                            \"month\": {\"type\":\"number\"},","                                            \"year\": {\"type\":\"number\"}","                                        },","                                        \"required\": [","                                            //\"estimated_income\",","                                            \"month\",","                                            \"year\"","                                        ]","                                    }","                                },","                                \"transaction_count\": {\"type\":\"number\"}","                            },","                            \"required\": [","                                //\"estimated_monthly_income\",","                                \"monthly_history\",","                                \"transaction_count\"","                            ]","                        },","                        \"source\": {\"type\":\"string\"},","                        \"source_id\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"income_streams\",","                        \"income_total\",","                        \"source\",","                        \"source_id\"","                    ]","                }","            },","            \"institution\": {\"type\":\"object\"},","            \"login_identity\": {\"type\":\"object\"}","        },","        \"required\" : [","            \"income\",","            \"institution\",","            \"login_identity\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"57f79638-68f6-4c19-a487-2d068e764db7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n"}],"url":"https://api.prod.finverse.net/income","description":"<p>Retrieve all Accounts under a Login Identity (using a specific login_identity_token). Authorization: login_identity_token</p>\n","urlObject":{"path":["income"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"2989b372-bd95-46ba-a728-7d3fcddf7d24","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/income"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Traceparent","value":"00-01228d4759f7d7e92942135179a1ec8d-ea98fb91550d92e5-01"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Mon, 04 Apr 2022 10:17:30 GMT"},{"key":"Content-Length","value":"1539"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"income\": [\n        {\n            \"income_streams\": [\n                {\n                    \"account_id\": \"01FZT16ENH495PJ16WMPC8S87N\",\n                    \"estimated_monthly_income\": {\n                        \"amount\": 625,\n                        \"currency\": \"HKD\"\n                    },\n                    \"monthly_history\": [\n                        {\n                            \"estimated_income\": {\n                                \"amount\": 15000,\n                                \"currency\": \"HKD\"\n                            },\n                            \"month\": 12,\n                            \"year\": 2020\n                        }\n                    ],\n                    \"transaction_count\": 1\n                },\n                {\n                    \"account_id\": \"01FZT16ENQT41Z8X19HEWPZTPM\",\n                    \"estimated_monthly_income\": {\n                        \"amount\": 15.458,\n                        \"currency\": \"USD\"\n                    },\n                    \"monthly_history\": [\n                        {\n                            \"estimated_income\": {\n                                \"amount\": 371,\n                                \"currency\": \"USD\"\n                            },\n                            \"month\": 11,\n                            \"year\": 2020\n                        }\n                    ],\n                    \"transaction_count\": 2\n                },\n                {\n                    \"account_id\": \"01FZT16ENZ6Z9QC4RSGYK0VRPX\",\n                    \"estimated_monthly_income\": {\n                        \"amount\": 0.648,\n                        \"currency\": \"HKD\"\n                    },\n                    \"monthly_history\": [\n                        {\n                            \"estimated_income\": {\n                                \"amount\": 15.55,\n                                \"currency\": \"HKD\"\n                            },\n                            \"month\": 9,\n                            \"year\": 2020\n                        },\n                        {\n                            \"estimated_income\": {\n                                \"amount\": 0.01,\n                                \"currency\": \"HKD\"\n                            },\n                            \"month\": 8,\n                            \"year\": 2020\n                        }\n                    ],\n                    \"transaction_count\": 2\n                }\n            ],\n            \"income_total\": {\n                \"estmated_monthly_income\": {\n                    \"amount\": 641106,\n                    \"currency\": \"HKD\"\n                },\n                \"monthly_history\": [\n                    {\n                        \"estimated_income\": {\n                            \"amount\": 15000,\n                            \"currency\": \"HKD\"\n                        },\n                        \"month\": 12,\n                        \"year\": 2020\n                    },\n                    {\n                        \"estimated_income\": {\n                            \"amount\": 371,\n                            \"currency\": \"USD\"\n                        },\n                        \"month\": 11,\n                        \"year\": 2020\n                    },\n                    {\n                        \"estimated_income\": {\n                            \"amount\": 15.55,\n                            \"currency\": \"HKD\"\n                        },\n                        \"month\": 9,\n                        \"year\": 2020\n                    },\n                    {\n                        \"estimated_income\": {\n                            \"amount\": 0.01,\n                            \"currency\": \"HKD\"\n                        },\n                        \"month\": 8,\n                        \"year\": 2020\n                    }\n                ],\n                \"transaction_count\": 5\n            },\n            \"source\": \"DEPOSITS_ANALYSIS\"\n        }\n    ],\n    \"institution\": {\n        \"countries\": [\n            \"HKG\",\n            \"SGP\",\n            \"PHL\"\n        ],\n        \"institution_id\": \"testbank\",\n        \"institution_name\": \"TestBank HK\",\n        \"portal_name\": \"Test Bank Personal Account\"\n    },\n    \"login_identity\": {\n        \"last_session_id\": \"01FZT16BH6GRHVNE8098M9JFH0\",\n        \"login_identity_id\": \"01FZT16BGSNQMN4T6CJCSY2FDC\",\n        \"status\": \"DATA_RETRIEVAL_COMPLETE\"\n    }\n}"}],"_postman_id":"57f79638-68f6-4c19-a487-2d068e764db7"}],"id":"17956bf8-48b5-4eea-9eab-e4065eb27545","description":"<p>Note: <code>GET</code> data requests read <em>previously retrieved</em> data from Finverse's database. To request Finverse to retrieve new data from connected institutions, please use the <code>POST</code> requests under \"<strong>Data Refresh</strong>\".</p>\n<p>See \"<em>Guidance: When to fetch data from Finverse</em>\" under <strong>04 - Login Identity</strong> for details on when data is available for fetching.</p>\n","_postman_id":"17956bf8-48b5-4eea-9eab-e4065eb27545"},{"name":"09 - Statements","item":[{"name":"/statements","event":[{"listen":"test","script":{"id":"4a8eaebc-9cca-4666-83ae-58e384520f8c","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","//Extract sample statement_id","if (jsonData.statements) {","    if (jsonData.statements != null) {","        pm.environment.set(\"statement_id\", jsonData.statements[0].id)","    }","    else {","        pm.environment.set(\"statement_id\", \"null\")","    }","};","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.statements) {","    if (jsonData.statements != null) {","        console.log(\"Number of statements found:\", jsonData.statements.length)","    }","    else {","        console.log(\"No statements found\")","    };","","    console.log(\"Statements array:\", jsonData.statements);","};","","","//STANDARD TESTS - START","//HTTP response status","if (pm.environment.get(\"is_statements_enabled\") === \"true\") {","    pm.test(\"Status code is 200\", function () {","        pm.response.to.have.status(200);","    })","};","","//Received Statements or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"statements\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additional_properties\": false,","        \"properties\": {","            \"institution\": {\"type\":\"object\"},","            \"login_identity\": {\"type\":\"object\"},","            \"statements\": {","                \"type\": [\"array\", \"null\"],","                \"items\": {","                    \"additional_properties\": false,","                    \"properties\": {","                        \"created_at\": {\"type\":\"string\"},","                        \"date\": {\"type\":\"string\"},","                        \"id\": {\"type\":\"string\"},","                        \"name\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"created_at\",","                        \"date\",","                        \"id\",","                        \"name\"","                    ]","                }","            }","        },","        \"required\" : [","            \"institution\",","            \"login_identity\",","            \"statements\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","    pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","","//[NO_DOC] ADDITIONAL DATA RETRIEVAL TESTS - START","if (pm.environment.get(\"is_statements_enabled\") === \"true\") {"," ","    if (pm.environment.get(\"run_data_retrieval_tests\") === \"true\") {","","        pm.test(\"At least one statement found\", function() {","            if (jsonData.statements != null) {","                pm.expect(jsonData.statements.length).to.be.at.least(1)","            }","            else {pm.expect(jsonData.statements).to.not.be.null} ","        });","","        var expectedNumberStatements = Number(pm.environment.get(\"expected_number_statements\"))","        pm.test(\"Found expected number of statements\", function() {","            pm.expect(jsonData.statements.length).to.be.eql(expectedNumberStatements)","        })","    ","    };","","};","//[NO_DOC] ADDITIONAL DATA RETRIEVAL TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"0f6a623d-3ce9-4eff-90e9-039af7fb0561","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/statements","description":"<p>Retrieve a list of all Statements under a Login Identity (using a specific login_identity_token).</p>\n<p>Authorization: <code>login_identity_token</code></p>\n","urlObject":{"path":["statements"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"8f6bea21-9712-4310-affa-a7798f59fe77","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/statements"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-a27c0ec98aa3d9b16af438061efa61bf-43bf33d8399b3f31-01"},{"key":"vary","value":"Origin"},{"key":"x-cloud-trace-context","value":"a27c0ec98aa3d9b16af438061efa61bf/4881677524865335089;o=1"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Thu, 18 Mar 2021 03:41:47 GMT"},{"key":"content-length","value":"397"},{"key":"x-envoy-upstream-service-time","value":"32"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"institution\": {\n        \"countries\": [\n            \"HKG\",\n            \"SGP\",\n            \"PHL\"\n        ],\n        \"institution_id\": \"testbank\",\n        \"institution_name\": \"TestBank HK\",\n        \"portal_name\": \"Test Bank Personal Account\"\n    },\n    \"login_identity\": {\n        \"login_identity_id\": \"01F11PR4Z0D85W43PREJ5RXP3K\",\n        \"status\": \"DATA_RETRIEVAL_COMPLETE\"\n    },\n    \"statements\": [\n        {\n            \"created_at\": \"2021-03-18T03:41:08.666Z\",\n            \"date\": \"2020-09-01\",\n            \"id\": \"01F11PRDNQQV3HE6K57BVPEH09\",\n            \"name\": \"Test Bank Statement\"\n        }\n    ]\n}"},{"id":"152e6f98-f716-46ce-8300-012beeac6790","name":"Warning (no statements found)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/statements"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-1e5434902cfcf2822eaeab412d9dd503-fe6eee5865cde8c1-01"},{"key":"tracestate","value":""},{"key":"vary","value":"Origin"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Tue, 08 Jun 2021 02:23:05 GMT"},{"key":"content-length","value":"275"},{"key":"x-envoy-upstream-service-time","value":"70"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"institution\": {\n        \"countries\": [\n            \"HKG\",\n            \"SGP\",\n            \"PHL\"\n        ],\n        \"institution_id\": \"testbank\",\n        \"institution_name\": \"TestBank HK\",\n        \"portal_name\": \"Test Bank Personal Account\"\n    },\n    \"login_identity\": {\n        \"login_identity_id\": \"01F7MP3J3H485QSDQC0FS15KE7\",\n        \"status\": \"DATA_RETRIEVAL_PARTIALLY_COMPLETE\"\n    },\n    \"statements\": null\n}"},{"id":"40101241-e5dd-41b4-bda5-446d830e1f59","name":"Error (product not supported)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/statements"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Thu, 08 Dec 2022 18:47:38 GMT"},{"key":"Content-Length","value":"333"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40012,\n        \"details\": \"Statements are not supported for this bank\",\n        \"error_code\": \"PRODUCT_NOT_SUPPORTED\",\n        \"message\": \"Requested product is not yet supported for this institution. Please refer to Institutions list for details on products supported.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"0f6a623d-3ce9-4eff-90e9-039af7fb0561"},{"name":"/statements/{statement_id}","event":[{"listen":"test","script":{"id":"d1b1b418-c230-4071-941a-bfff79625b5f","exec":["//LOG ERRORS & KEY VALUES","if(pm.response.error) {","    console.log(\"error:\", pm.response.error)","};","","","//STANDARD TESTS - START","if (pm.environment.get(\"is_statements_enabled\") === \"true\") {","    pm.test(\"Status code is 307 or 200\", function () {","        pm.expect(pm.response.code).to.be.oneOf([307,200]);","    })","};","","//(Redirect=false) Received Statement Links or Error object","if((pm.response.headers.get('Content-Type') != \"application/pdf\") && (pm.response.code != 307)) {","    var jsonData = pm.response.json();","    pm.test(\"Response has expected keys\", function() {","        pm.expect(jsonData).to.have.any.keys(","            \"statement_links\",","            \"error\"","        )","    })","};","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additional_properties\": false,","        \"properties\": {","            \"statement_links\": {","                \"type\":\"array\",","                \"items\": {","                    \"additional_properties\": false,","                    \"properties\": {","                        \"expiry\": {\"type\":\"string\"},","                        \"statement_id\": {\"type\":\"string\"},","                        \"url\": {\"type\":\"string\"}","                    },","                    \"required\": [","                        \"expiry\",","                        \"statement_id\",","                        \"url\"","                    ]","                }","            }","        },","        \"required\" : [","            \"statement_links\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//(Redirect=false) Schema validity test","if((pm.response.headers.get('Content-Type') != \"application/pdf\") && (pm.response.code != 307)) {","    pm.test('Response schema is valid', function() {","        pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","    });","};","//STANDARD TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"003f070d-f19e-4ee8-8e75-c54748f15f2a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/statements/{{statement_id}}","description":"<p>Retrieve an individual statement URL, based on the statement's id. By default, this request returns a redirect (HTTP 307 code) to a temporary statement URL (valid for 15min).</p>\n<p>Authorization: <code>login_identity_token</code></p>\n<h2 id=\"optional-parameters\">Optional parameters</h2>\n<h3 id=\"redirect-mode-for-statement-url\">Redirect mode for statement URL</h3>\n<p>URL parameter: <code>redirect</code></p>\n<p>(e.g. GET /statements/{statement_id}?redirect=false)</p>\n<p>Description: Toggles the behaviour for how statement URLs are returned.</p>\n<p>Recommended value: omit. This results in the default behaviour (<code>redirect=true</code>).</p>\n<p>Accepted values:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Value</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>redirect=true</code></td>\n<td>Default behaviour. Request returns a HTTP 307 redirect to the temporary statement URL.</td>\n</tr>\n<tr>\n<td><code>redirect=false</code></td>\n<td>Alternative behaviour. Request returns a <code>statement_links</code> JSON object including a link to the temporary statement URL.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["statements","{{statement_id}}"],"host":["https://api.prod.finverse.net"],"query":[{"disabled":true,"description":{"content":"<p>Default = true</p>\n","type":"text/plain"},"key":"redirect","value":"false"}],"variable":[]}},"response":[{"id":"9c28796b-c925-4589-8d82-583b5d302bb1","name":"Success (default, redirect to statement URL)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/statements/{{statement_id}}"},"status":"Temporary Redirect","code":307,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"location","value":"{{URL_PATH}}"},{"key":"traceparent","value":"00-e2a497902b8c7fc6f9e8f1469417d054-1b85ebe58a5b2756-01"},{"key":"tracestate","value":""},{"key":"vary","value":"Origin"},{"key":"x-cloud-trace-context","value":"e2a497902b8c7fc6f9e8f1469417d054/1983250582027839318;o=1"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Wed, 24 Mar 2021 02:02:12 GMT"},{"key":"content-length","value":"0"},{"key":"x-envoy-upstream-service-time","value":"3077"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":null},{"id":"f4afa3f2-e5ec-4a10-8355-b001ccaeb931","name":"Success (redirect=false)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":{"raw":"https://api.prod.finverse.net/statements/{{statement_id}}?redirect=false","host":["https://api.prod.finverse.net"],"path":["statements","{{statement_id}}"],"query":[{"key":"redirect","value":"false","description":"when true (default), return as http redirect, otherwise response will be json object with download link"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Mon, 27 Jun 2022 03:27:33 GMT"},{"key":"Content-Length","value":"733"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"statement_links\": [\n        {\n            \"expiry\": \"2022-06-27T03:42:33.724Z\",\n            \"statement_id\": \"01G62D96P4YB0N85A8D5JTM7XH\",\n            \"url\": \"https://storage.googleapis.com/dev2-secret-bank-integrations/01G62D8BKXA4VEYRCK1HBJ396D/statements/01G62D9575G376SJQQ8WDS4YQM.pdf?Expires=1656301353&GoogleAccessId=b-dev2-secret-sensitive-data%40finversedev1.iam.gserviceaccount.com&Signature=ZjCnpk9vB%2FjXT%2Fe7FI8ppb%2BuN9Pe1JKJplLsYYk%2BLQOUtpY%2BrJ3I%2B%2BAeGf817MkNy9soRYHQxY2yZIGO1amXTiaBHp%2Bvuz88ctLnRyc5zjbVMFra96oz5haHarbShUuTpMQzdDpTGcJaLp3mDGX8D951bzmURn73AssX0v9dFtp%2Feakz1qa%2FClYwb5oG%2F2rRXKht399%2F7Z0zionHoBXyiJPBspU76x6RzJI4YYvxWH36hTUVJQa5W4OCmFJPxy82OE9%2BY3ykjbMenEgvIWZ%2BU7GfNShAsWG2nlKh7z7e2Xnyup%2FcLRGkYJEJ9ENKrWhIC253crN4kz4Qf8kC7cP6Pw%3D%3D\"\n        }\n    ]\n}"},{"id":"559fc1be-2611-4f5a-ad1c-4c31318dfc2a","name":"Error (Statement not found)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/statements/{{statement_id}}"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Thu, 08 Dec 2022 19:00:32 GMT"},{"key":"Content-Length","value":"245"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40004,\n        \"error_code\": \"STATEMENT_NOT_FOUND\",\n        \"message\": \"statement_id cannot be found. Resource does not exist, has been deleted, or is no longer accessible.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"003f070d-f19e-4ee8-8e75-c54748f15f2a"}],"id":"c213f666-f73c-41a7-b440-0f8dbae70e5f","description":"<p><strong>Product description:</strong> <code>Statements</code> are original statements which Finverse retrieved from linked institutions, for example bank statements. Statements are usually in pdf format, but can also be in csv format.</p>\n<p>Note: <code>GET</code> data requests read <em>previously retrieved</em> data from Finverse's database. To request Finverse to retrieve new data from connected institutions, please use the <code>POST</code> requests under \"<strong>Data Refresh</strong>\".</p>\n<p>See \"<em>Guidance: When to fetch data from Finverse</em>\" under <strong>04 - Login Identity</strong> for details on when data is available for fetching.</p>\n","_postman_id":"c213f666-f73c-41a7-b440-0f8dbae70e5f"},{"name":"10 - Composite Statement","item":[{"name":"/composite_statement","event":[{"listen":"test","script":{"id":"de97ab86-eba9-4d00-b0ae-ce7a36dd65af","exec":["//LOG ERRORS & KEY VALUES","if(pm.response.error) {","    console.log(\"error:\", pm.response.error)","};","","","//STANDARD TESTS - START","pm.test(\"Status code is 307 or 200\", function () {","    pm.expect(pm.response.code).to.be.oneOf([307,200]);","});","","//(Redirect=false) Received URL or Error object","if(","    (pm.response.headers.get('Content-Type') != \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\") ","    && ","    (pm.response.code != 307)",") {","    var jsonData = pm.response.json();","    pm.test(\"Response has expected keys\", function() {","        pm.expect(jsonData).to.have.any.keys(","            \"url\",","            \"error\"","        )","    })","};","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additional_properties\": false,","        \"properties\": {","            \"expiry\": {\"type\":\"string\"},","            \"url\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"expiry\",","            \"url\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//(Redirect=false) Schema validity test","if(","    (pm.response.headers.get('Content-Type') != \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\") ","    && ","    (pm.response.code != 307)",") {","    pm.test('Response schema is valid', function() {","        pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","    });","};","//STANDARD TESTS - END"],"type":"text/javascript"}}],"id":"3abb32b7-dab6-442c-9ca6-8be9f7376f87","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/composite_statement","description":"<p>Retrieve the Composite Statement in .zip format. By default, this request returns a redirect (HTTP 307 code) to a temporary Composite Statement URL (valid for 15min).</p>\n<p>Authorization: <code>login_identity_token</code></p>\n<h2 id=\"optional-parameters\">Optional parameters</h2>\n<h3 id=\"redirect-mode-for-composite-statement-url\">Redirect mode for Composite Statement URL</h3>\n<p>URL parameter: <code>redirect</code></p>\n<p>(e.g. GET /composite_statement?redirect=false)</p>\n<p>Description: Toggles the behaviour for how Composite Statement URLs are returned.</p>\n<p>Recommended value: omit. This results in the default behaviour (<code>redirect=true</code>).</p>\n<p>Accepted values:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Value</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>redirect=true</code></td>\n<td>Default behaviour. Request returns a HTTP 307 redirect to the temporary Composite Statement URL.</td>\n</tr>\n<tr>\n<td><code>redirect=false</code></td>\n<td>Alternative behaviour. Request returns a JSON object including a link to the temporary Composite Statement URL.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["composite_statement"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"5f55b4c4-c27a-422b-a6ed-a5a19c8b4105","name":"Success (default, redirect to statement URL)","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.prod.finverse.net/composite_statement?X-Request-Id=1777634238","host":["https://api.prod.finverse.net"],"path":["composite_statement"],"query":[{"key":"X-Request-Id","value":"1777634238","type":"text"}]}},"status":"Temporary Redirect","code":307,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Location","value":"https://storage.googleapis.com/sandbox-app-composite-statement/01G62D8BKXA4VEYRCK1HBJ396D/composite_statement_1655863602.xlsx?Expires=1655864502&GoogleAccessId=b-dev2-app-data%40finversedev1.iam.gserviceaccount.com&Signature=dTMELU7gPG9ONwiUrddkjqBDkBvJhqh2fExHisvHSC3capbR%2FTAf8Z2yjcrsc3Siua7uOIQ1wD%2Bf%2F91YZLJn4BN%2Buqc3yvJtaXPxzqhWbtOz9mKOhCnknst91S4aEG8GCRTU18%2Fyfde%2B%2B3mJ%2Bg6NGvTAeT6QF9ENCr%2B62LBFR2G6iSV0KQ1eiLo7FERp%2Byq48wF9cOyu8NfNdm57erhAGaCFwJwN8d9wyc68tvUrMHwAsLdOIqtpIE2tI5BgV7if4Rwsv0YwE0m7EjQ6U0OFmmQDRzlpsS%2Fy0j3MmRHd3lcOlgiZdUu9XKiCLFTHUYPQaUGbY%2FDHQqj%2BT8CxlkM3BQ%3D%3D"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"01G64JJTT2C79JSHTNZ6VQ05JR"},{"key":"Date","value":"Wed, 22 Jun 2022 02:06:42 GMT"},{"key":"Content-Length","value":"0"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":null},{"id":"101fc762-6f9e-4057-98d4-15c7cc4cb7a9","name":"Success (redirect=false)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":{"raw":"https://api.prod.finverse.net/composite_statement?redirect=false","host":["https://api.prod.finverse.net"],"path":["composite_statement"],"query":[{"key":"redirect","value":"false"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Mon, 27 Jun 2022 03:38:08 GMT"},{"key":"Content-Length","value":"635"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"expiry\": \"2022-06-27T03:53:08.551Z\",\n    \"url\": \"https://storage.googleapis.com/dev2-app-composite-statement/01G62D8BKXA4VEYRCK1HBJ396D/composite_statement_1656301088.xlsx?Expires=1656301988&GoogleAccessId=b-dev2-app-data%40finversedev1.iam.gserviceaccount.com&Signature=BI5xZ0EDRQZwtiIl2UiN9fXd7xw9T4iVjwR8lXq1LajV7zoZ7Ql1UUOD8chuQo4e3OjxmLp7OIqth5Pca2swtnXyMMeFe84GhzUd7Cr9C%2BOrSZJxeAUIslbsMWbi%2FsTAOQOeCOwgKUqB1ExWPlyv%2BEYvhToY4svYLvT1LyLIllILi0xpbqDvedJMeTFYh90AJJmY%2BHJpMeVEsTLRhc5FqclrCidIyUjKIM9r10yGNXPIg1wB5PZOwseHeO9Wx1i8DOQV%2FORj3%2Fcu6IQnby%2FTImQMX%2BoGmY5QkRqWghfBNk6xK3U%2BLDwSkUIWlwBCUWpQ3ugcaLb3OE9bLVos8sm0PQ%3D%3D\"\n}"},{"id":"08bad09b-5e01-44e7-b52b-9a3e5af89431","name":"Error (product not ready)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/composite_statement"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Thu, 08 Dec 2022 18:55:26 GMT"},{"key":"Content-Length","value":"227"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40004,\n        \"error_code\": \"PRODUCT_NOT_READY\",\n        \"message\": \"Requested product is not yet ready. Please review product_status or try again later.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"096b9b1e-77ab-45dd-9c48-a4c21d7bf6c9","name":"/composite_statement","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/composite_statement"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"X-GUploader-UploadID","value":"ABPtcPpooqS1lVe67ctXMWBrk6miYBEAD5LbH0O2ppC2vVyp7rUXvXkVjnDwMgVNvEsYbL9uAk0"},{"key":"Expires","value":"Thu, 11 Jan 2024 07:55:13 GMT"},{"key":"Date","value":"Thu, 11 Jan 2024 07:55:13 GMT"},{"key":"Cache-Control","value":"private, max-age=0"},{"key":"Last-Modified","value":"Thu, 11 Jan 2024 07:55:12 GMT"},{"key":"ETag","value":"\"9a94d8ca4fa5f5bcee51b5eca0eb1369\""},{"key":"x-goog-generation","value":"1704959712701569"},{"key":"x-goog-metageneration","value":"1"},{"key":"x-goog-stored-content-encoding","value":"identity"},{"key":"x-goog-stored-content-length","value":"50939"},{"key":"Content-Type","value":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"},{"key":"Content-Disposition","value":"attachment; filename=\"composite_statement_1704959712.xlsx\""},{"key":"x-goog-hash","value":"crc32c=rRWWDw=="},{"key":"x-goog-hash","value":"md5=mpTYyk+l9bzuUbXsoOsTaQ=="},{"key":"x-goog-expiration","value":"Fri, 12 Jan 2024 07:55:12 GMT"},{"key":"x-goog-storage-class","value":"STANDARD"},{"key":"Accept-Ranges","value":"bytes"},{"key":"Content-Length","value":"50939"},{"key":"Server","value":"UploadServer"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000xl/worksheets/sheet5.xml�VKo�6\u0010��W\u0010,�S�ڗ_���]�M\u0001�^x�\u0006�+�V�I�JR+ۿ� �\\ۧ��كV�\u0019~\u001f�\rř�ヒd\u000f�\n�\t�M���ΐ\u000b�K藻�_O�����Fso\u000b\u0000G\u001e��6��s��(�Y\u0001��\t��\u001f���(��\u0004�.��\u0001��$%��tz\u001c)&4M�`[\u001b�\u000b��|F\u000e\t͙�@Ӹd;؀�R\u0006���5ۍ��ȟ�Q���\\(�~\u000f�@�������\u000f��-�_\u0002j;z'��\u001c�A\u0007�\u000b\u001a4T�\u0016X_�Q�d����\u0011�Jh�\tu�j��X�P~\u0002��\u001c8�\u0006����]���\nr�C:�݀��\u0001?����\u0014\u001a6�j��G���J:��\u0015J4�}/�N���KJ\u001c��c\u0005Rz-(�|�<��KJ�\u0010�&c\u0012\u0012:�NG��0���'��=b\u0015\u0004k��\n<l\u0011���N}Z�6|\u000eJ�!��*(a�\u0013{\u0018V3������fͧ�����9��]�.�a[�N�[�?�W8�����v���4�P���HVڑ��\u001c��+���\u0005%J��\u0012�\u001e�b�Ԃ�\"p\u001c/(�*�P}ml!\u0019i\u001ce(\\�eK�|�f���ވf�b7��lr�\r��\u0016q�f���7C|)��\"�G���E�]g\n    <j��p7]0���`ML�\b�����\u0003讴\u0016!�q�\u0012�\t]�(q\t�4����q\u001c�=v\u001b�[\u001b3\u001f�̗�1�Wb���1\u0017m�b\u0014s:�D\u0006�˹�Ki�v7���-)��Vb����z>�l��&)Ј'Ԏ�\u0015h\u0007f��=\u0018'��\u000e�\u001b���N�33;�-���N''�^X�(�\r\u001d���9����SJ��\u001c��\n        <E(�\u0003@��F�Ki����*I�J0\u001b�\u0004\t=�Ďjp.�u��^Wj\u000b�Q\b�O{~�a_�(�7&,�c��\n�7{0��\u0011�\u001dk��\u0012�3L8J*\u000bk/\u0010���^\u000e)�J�ݟk��\u0010�o�\b7lԧd �\n�\u0002�'j�\u0010 /�/�y\u0002/J�Ѕ�c����a)�I��:��L�F�� +�\"���v�jX]g������}�1r�4b�;��\u000f��|��b��N(��\u001ajr���_naWIf�/D����<�\u0006\u0010��,�[�4$��\u0003h�\u0014G�=�q�7��\u0001\u0000\u0000��PK\u0007\b^����\u0003\u0000\u0000�\u000b\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\r\u0000\u0000\u0000xl/styles.xml�mo�6\u0014���SD�4m�n�\u0000���\\u�fڛiںio]b��\u001f\"��H?�>�>�d�\u0012�B\u001dpHBF���O��\u001f�\u001c�\u0006\u001a|ZQ�\n            <!�b�&�����،ǘ-&�����{�)�\"HeF�oK������\u0013��2��u��\u0012Q�^�\u0004�\u0015%s.(��5\u0017\u000b7M\u0004�q�&Q�\u000e<o�R�\u0019\b\u0003�H#*Sg�\u001f���Ѧ��\u000f?�\u0013��G�ɗ��\u0018M\u0000���������C�e\u0019pK'��N��������>|�g�xw�Z�\u001d�{\u0006��\u000e��|�k�k�S\u0013��]����ݛU\ra�>;O�L�\u001e� E������9��d[cfK(R$�[8��\u0011��\t�\"O�h�\\`W�\u001f����D\f\u0019��T�d��?4'�\u000b)}Po\u0014&d�F݂�!\f\u0012(%\u0012,8���,A\u0013�8C9\u001c=�0���R�(`V}J�\t��\u001d���ML�σh�y��p�ִT��_%jEG�jQ\u0014\r��\u0012���N��z��m:jT�~��.z_��m:J��!\r�\u0007.b$v<4o\n\u0003����Yz�aશ0\u0010��^w��0�<y�#y�V����]y�>�E���\b���\u0011<��\\��g_δ�ðt���\u0019�ZOQ�\u001f�a��#6�Tb�qN�{8�\u0013��M�i\\��{X��a0C��9/�\u0018UǬ�\u000eL\u0012��\u0011�`\u0014�v\u000f�M��y�uķ{Uv+�~~�\u000fHD��*Z\u0011\\���u�\u0007��\u0010U�y�Q���3�>-j4\u000f�\u0001|1�Yr��9��\"X �\u0004$��,~18]\n����\u0011ί%Z�_��\u001b�'$$���9 ��-`r�V�:Z�Ki�o����W���]�Қ��\u0017'٢1h�I$O�Ϥ��9\u0015\u0013ߚ���'o�����:vT!�5 ��3�\u0004N�Lt��?\"\u0016�p\u0017æ\u001c�\u001c��<2�`&�۸�H�g\u00147��Ʌ�\u0011�sFH\u000e\t���a��Tb_����p:���OF��ӥ\u0013�y��J[��_?���Vӟ4����b�ar�uz�a�w���1��\u0013���^&~w�X< ��I��ĂI[�pc@\u000e\r�\u0019b\u0012��!i/�4�!��:������YR�T�Z�KwCȢl;�4{����w��&�Q��)�29$t,�)�3t�=P�_07!�m�X<�o��_?�*�O�L�(�\u0018�T����~bL�C��TH�-2i�Sn�T�w������񏋝Q�d�Z�X�\u0019x��rs�R�e�u,��{�a�\u0016��\u0019�\u0017\u0000\u0000��PK\u0007\b��1�\u001d\u0004\u0000\u0000�9\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000xl/worksheets/sheet1.xml��Y�\u001du�����_�L���\u0006b��\rj+|��m�T\u0010$�\u0012\u0012#)��^��6�q��[%366�u����\u000b?�\u0013_W\u0006�P~�?���\u0017�~�{������ݿ�����^�����/����i������������_���7?�ݽ��￼x���?�}�����7?�|�˳7_��������W�y���W�^���7���{���w������|���_�=y����־����\u0017o�^W�~����O�^������_���n�{;���ߎ��g����̟~���+=����ܽ|�{���������ۮ\u001f|��\u001d����;?����g�|���/|�{���ۻ\u001f޾\u0016><ؽ7?��=~�����x������?��_޽�������������\u0017�ݳ\u001f�^_��~���\u001fox��o?�\u001d_�w?���o���p��w?~�~��߾x��n�����\u0017\\�ǻ������w\u001fB��ūן����߿�����������~}�\u0010�݋\u0017��~xw6���\u000fo����W�~\u0019~x����W�|�ٯ�����@�������룾\u001bĿ�z�o������7�\u0017�>\t�>{y����\u001f��{�~x����??�?��]��?>~��}���̧O�����?}���kk_zR�W��w����_]����O�����ox�����|���x��w�����������O�/�����\u000f������\u001b���7o���g���ߟ������_=�����{?����W�,\u001f������ۯx��\u000f����y��a\u001e\u001e=��_�0�>>̣��y�գ\u0007��<��0��\u001e��W�\u001f�5\u000f����<9x�뛿�a����7<̓�\u001e�g���%\u000fgu���_�����C��\u0015�y�^�W�O\\��\u001f����+^�eW��xś�슷\u001f�x��]��W \u000f��+~���?z�/���G���\u0010��\u0015��j�\u001f���7�&��_w̓/\r��k~�q���;��ӭs���;W�n�������\u000b������t\u0003]�uw�է[�꯻��>�DW�]t��6�����O���_w\u001f]����������\u0002����O���_w\u001f]���������}t���G�7���?\u001f���\u000f���=�\u0013\u000f���=��\u000f������?���+���_�:�KO�����߾~�������}\u000bz���|\nD\u001f����ݹy�\b�_ix���7��~���o����wW�x����?$@\t?��\u0012��(\tJ����(\u0005J�R��(\rJ�ҡ�(\u0003ʈ2��G���W����볛�~�\u0007�m�j����?7�\u0012�D(�5n\u000e%E�Pr�\u0002�D�Pj�\u0006�E�Pz�\u0001eD�P�#��������������>���O�\u0013��\u001an\u000f%B�Q\u0012�\u0014%C�Q\n�\u0012�B�Q\u001a�\u0016�C�Q\u0006�\u0011eB���b{�g�w���nw���ă���'��\u001eJ�\u0012�$()J���\u0014(%J�R�4(-J�ң\f(#ʄ2\u001f���\u001e��ރ/��p��/O<�mo����D(1J���d(9J�R�T(5J�Ңt(=ʀ2�L(�\\l����=�bY�w���ē���'��\u001eJ�\u0012�$()J���\u0014(%J�R�4(-J�ң\f(#ʄ2\u001f���\u001e���#z��Q\u0002�\u0010%B�Q\u0012�\u0014%C�Q\n�\u0012�B�Q\u001a�\u0016�C�Q\u0006�\u0011eB���bk��n���+=��J�=�ڿ��\u0018G�\u0012�D(1J���d(9J�R�T(5J�Ңt(=ʀ2�L(�\\�����=���\u001e%@\tQ\"�\u0018%AIQ2�\u001c�@)Q*�\u001a�AiQ:�\u001ee@\u0019Q&��H.�v��ٱ��V��Kv���8���B��)�HG�cJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C�\u001c��\u0004�e���W�\u0017\u0007���$W��\u0007���g+� \"ED��4\u0011�\"RE$�H\u0017�0\"eD҈�\u0011�#RG$�H\u001f�@\"�\u0004iaZ��C�\\���r�-���W��!?�y��\u001e������\t�\u001fg\u000eV�/�GL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t��ә����s�`��3\u000f�+���\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d���O\u0007��/{�գ��\u000f�<ޯ��\u0012S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH�+?����,SWO�+�p��gg��ٯ|法s�b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;�˕��dWXC�g\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7}:�]}h+�\u0017��/^.�\u000e�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t9�ӵ�\n���L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d��O�ī\u000f���s��K��3��\u001b)d���+n�L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH�?mp:^^hE�?\u001f���\u0007\u000e>�y���ݫ��љ�k��5&��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.�~:g^�FW�|���7�^ct\n>��՗\u0016�EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t9��\u001d�\u001aC��\u001f���h�ײj�L1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t������C\u001d��C{�t>\u001d:���웋%S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]��t����F^�\u0018�㙫Ͽ��z�� �\u000e�~�\t͛���nn�_�s�d��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;�˽�n��\u0018��g\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7}�T^(D��Hx��9�/�|6n��)�HW�{\u00037K��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��u�n��\u001f\u0012��J�ጿJ�噛��\u0017(\u0007gv/�GGgv\u001fO|�]�)eʘr���d��j���e�z��id��f��ie�\u000e��\u00068�5��k2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH��>�5�?d����D���;?\u001e:�\u0006�@,\u0014���k��L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH����y�\u001c]}�u����z>\u001d�WV>\u001d�������h�K��W\u000f�|�pw������o���\u0013�p�dJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C�\\���ysu�����|:���|��|���~��\u0007���_�{|�\r�)eʘr���d��j���e�z��id��f��ie�\u000e�r��\u001b��ǘ�y-��'�O����?\u001c����\u001f�\u0007ÿ8\u0002�_�y�����Uo8�2�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]�\u0000�s�\rV��\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M�N�7X��g\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7}:��|�O�~W�oOo������Q3b\n�\"����(Sʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d��O\u0007ћ\u000f���_>�/.\u001e�������V�\u00141�7\u001cF�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.W~:��|hL�����>���;�oOo��+ǌ\u00152EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t������'S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t������Cg��\u001b�n��_=ٟ�l�H!S�\u0014�p�dJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C�\u0018����y�!#]_���7l\u001d\u001e�����\u000fv~y��ɋŷ�;�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7:w��\u001b�oOo�������������1eEL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t9�ә�v_�~{z��\u000b���|1�/�<�w�\u0017g>�;R̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]��tԼ�Ǥߞ>���Y\u0007g����u�Q��3�͝{'S2eL9S�T2UL5S��2uL=��42ML3�´2m�t9�ӽ�vߙ~{����߿<���\u000f�s��;�P��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C����\u0014z�1�~�]�\u000f�ߪx��S�=}���ɏ�<��\u001d\u0003X�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH�{?\u001dGo�\t귧\u000f�q���\u0017s?8�d?w,a\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]��t%����>�Wң3�Jz�L�ř��ι�)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C����\\z˹�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C����\\z�e.}�ϥ_��lܜK�\"���s)Sʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d�Ÿ\u001f�Υ\u000f�\u0019귧\u000f���\u001c����/���r��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.W~:�>�0�=S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u0015�\u0001֧�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M�N�\u000f01}�\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]n�t�|�\u001d�{��)d��b��)eʘr���d��j���e�z��id��f��ie�\u000e�rӧ��\u0003lE�3\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH��>\u001d&\u001f`\u0010��)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C������\u0000���L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d��O'�\u0007�\u0018�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M�N�\u000f0�|�\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]l����\u0010���L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d��Owć�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M��\u000f�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH��>�\u0011\u001frGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]n�tG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C������;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�!wD��)d��b��)eʘr���d��j���e�z��id��f��ie�\u000e�rӧ;�C�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d��Owć�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M?:�\u0011\u001fqGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]n�tG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C������;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�\u0011wD��)d��b��)eʘr���d��j���e�z��id��f��ie�\u000e�rӧ;�#�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d��Ow�G�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M��#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH��>�\u0011\u001fqGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]l�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�1wD��)d��b��)eʘr���d��j���e�z��id��f��ie�\u000e�rӧ;�c�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d��Ow���\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M��#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH��>�\u0011\u001fsGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]n�tG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C������;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�1wD��)d��b��)eʘr���d��j���e�z��id��f��ie�\u000e�b�ONw�'�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M��O�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH��>�\u0011�pGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]n�tG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C������;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�\twD��)d��b��)eʘr���d��j���e�z��id��f��ie�\u000e�rӧ;�\u0013�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d��Ow�'�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M��O�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH\u0017����tH|\u0014V-\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~:1�?�k��(\u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[�����(���X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n�������v\u000e�b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���\u000e����9Y��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~:e�?�k�)\u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[�����(��3�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n�������v\u000e�b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���\u000e����9���b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~:��?�k�h*\u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v����-�JZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z%-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��^IKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�W�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul;���Ϸ�+i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[ꕴT�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�JZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z%-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷc�\\����z--�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��^KKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o���R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul;���Ϸ�ki�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[굴T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�ZZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z--�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱]���|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~���HKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�Ro���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�7�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul;���Ϸ�\u001bi�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[ꍴT�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�FZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z#-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~���HKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���.�~{���JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�Ro���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o���R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul;���Ϸ�[i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[ꭴT�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�VZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z+-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~���JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�Ro���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl�kp��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱]������PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v��G�[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d���\u001f�o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl�kr��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱]�����-��QX�X \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����(��[�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[����vn�b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���n���ڹ���b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~���?�k�*\u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����(��[�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[����vn�b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���n���ڹ���b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~���?�k�*\u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����(��[�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d��گη�+i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[ꕴT�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�JZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z%-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��^IKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�W�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul;���Ϸ�+i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[ꕴT�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێ�r���[굴T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�ZZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z--�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��^KKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o���R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul;���Ϸ�ki�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[굴T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�ZZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v����-�FZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z#-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~���HKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�Ro���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�7�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul;���Ϸ�\u001bi�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[ꍴT�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�FZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z#-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷc�\\����z+-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~���JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�Ro���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o���R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul;���Ϸ�[i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[ꭴT�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�VZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z+-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱]������@Z*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m��a�_�����m����������˷ͯo��z����w�~|��oo���ӳ\u0017o�������?��_�\u001d�e��tK�����������g/���o�^�������^�}�×��ۯ?�����owճ�{��ͽ\u0017w?����7_=z��&|�����˷�~����W�<�~���=��__�}��#y���{��\u0005~z���g�~�����\u001f>��������_�^\u000f����������ً���_}���{?=��m��ow����w׺z�������o���为��e���?�\u001f_��r���e������^�~~����wO�w�}����g��޿��7w��'��ux�ӳ��x���__<��������������\u001f_?{��}��\u000fw/^\u0004�~����w|�����K��\u000f|�\t\f}����w��O��?��ë_��[�է�������\u000fOp��i����~�{}������������\u001f���^���W?���������_�{��?����������{s����^��g/����o���{{�������o���\"���C��\\��Ss��?��/��J�~�����_�����������\u0001\u0000\u0000��PK\u0007\bJ�Zr :\u0000\u0000��\u0002\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000xl/worksheets/sheet4.xml���s]u�g���+\u001c��~�\u0006K�wc:*��~�͛\u0013\u000bp�m1�H�ꯟ���9�k��Iw�CS\u000f\t>��ߖ���`U�7���޽}����\u000fon޿�����Ń���ݼ~����\u0017�\u0018���\u0017�����_nn��Ï��w\u000f�����\u001f^^�xw�����\u000f��x��Շ�n~�~�o��~s���݇�nn���O�ׯ^�ѻ�__=|���w�޼��������\u0007߿y{w}[ݼ�~y����\u001f�/���W?\\\u000f�w�O�~7޴�~�\u0013�'����;��o^�yw���������//���mWW�\u001f��w�����_>���\u001f�����_�ۛ�����߅_o��Ï7��7��~~���ɋ������\u001f^^����ۋ��/���������\u0013���oo~���\u000f?ލ7���w�\u001fy���������_�ܦ������ÿ������Ox}������}�\u001e���7��^�Ǜ�_^^���\u0001��xpw���{\u0004�o�~|7.\u001e|�����ˋ��/\u001e���ͻ�Wo�_^\\>|��_��_~��Ǐ�|��7?߿a���E����_?���܇\u001f?�����O�W�_^��]\\<x��ݛ\\������_���������G��1�>�������������ޔ�����;������O.>}ѧ\u000b��滛�\u001f����;���O\u001f���������?>�w������Ńwo�����ݿ߿c\u0017\u000f~y�����{<}t�ໟ?�ݼ[~}���������y�?s���ns�s�GϾ�m\u001e�v�G{��/w�ǿ����m�������������G�t�χ���ۼ���_'�u�_'�u�_'�o~��?y��?i��'~�C�?{��??��'>��\u000f���O?\u0016<�b'>���g_��翝������\u0013_|�\u0013/\u001f~���/w��͗{n.?=8�_�ɹ���\\~�g����s�垞�O���{~.?=@�_�\t���\b]~�g���Ct�垢�O���{��>=GW_�9���\u001c]}�����?���st��9��r��է����=GW����/�\u001c}�\u0013���<��_P����?��\u001c�'��?�ۿN��ĿN��ĿN���į�$��$|u���ono~yp{���u��WϞ|�c�Sr��ϕ�>^�/\u001f������\u0007w//>\\|��?�}�蛯����߮�ۯ�<����%@\tQ\"�\u0018%AIQ2�\u001c�@)Q*�\u001a�AiQ:�\u001ee@\u0019Q&�\u0019eAYQ�=�����7|ut�W�'�y��M��K�?>�$�����\u0007!���\u0017�����K�?9�$���(\u0019J�R��(\u0015J�Ҡ�(\u001dJ�2��(\u0013ʌ���(۞���ѯ3�P7���|��������?Z���gg#�����G%���G'+q��ߎyx���\u001e�-��.,\u001c%E�Pr�\u0002�D�Pj�\u0006�E�Pz�\u0001eD�Pf�\u0005eE���d�\u000f-��g�|v���;\u000b?�o��1�-��?���������揉��(\u0019J�R��(\u0015J�Ҡ�(\u001dJ�2��(\u0013ʌ���(۞�L�ɡ�?�l�/�~~�ۓ���m3����&���ğ�L�鋯��]\u0011��菑��(\u0019J�R��(\u0015J�Ҡ�(\u001dJ�2��(\u0013ʌ���(۞���顑?�|�g?\u0001����#qu6�Ϗ�l�O\u000f���G��g���o���QR�\f%G)PJ�\n�FiPZ�\u000e�G\u0019PF�\teFYPV�mON&���?s>�{�\r%@\tQ\"�\u0018%AIQ2�\u001c�@)Q*�\u001a�AiQ:�\u001ee@\u0019Q&�\u0019eAYQ�=9Y���}��E\tPB�\b%FIPR�\f%G)PJ�\n�FiPZ�\u000e�G\u0019PF�\teFYPV�mON����r_�rQ\u0002�\u0010%B�Q\u0012�\u0014%C�Q\n�\u0012�B�Q\u001a�\u0016�C�Q\u0006�\u0011eB�Q\u0016�\u0015eۓ��^><:�������2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u000e����)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�!�oL\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u001f\u001d�4���1\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��~|x��j��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n���Mc��\u001bS�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t�駇7�-�oL\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000f��KnL\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000fG�K��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000f��K�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ�������x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:��\u0012;�\u0011\u001fqGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n�pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�\u0011wD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�tӇ;�#�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000fw�G�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��iۥ�M\u001f�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u0011\u001fqGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�l�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�1wD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�tӇ;�c�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000fw���\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��iۥ�M\u001f�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u0011\u001fsGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n�pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�1wD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�d�O\u000ew�'�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��iۥ�M\u001f�O�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u0011�pGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n�pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�\twD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�tӇ;�\u0013�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000fw�'�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��iۥ�M\u001f�O�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK'�~z�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n�pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�)wD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�tӇ;�S�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000fwħ�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��iۥ�M\u001f�O�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u0011�rGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n�pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:����\u001d�\u0019wD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�tӇ;�3�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000fw�g�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��iۥ�M\u001f�ϸ#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u0011�qGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n�pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�\u0019wD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�tӇ;�3�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ��ɦ�\u001f�Ϲ#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u0011�sGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n�pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�9wD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�tӇ;�s�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000fw���\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��iۥ�M\u001f�Ϲ#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u0011�sGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N6��pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�\u0005wD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�tӇ;�\u000b�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000fw�\u0017�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��iۥ�M\u001f�/�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u0011_pGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N7}�#����\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n�pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t��ˇ�C����j�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l�\u0013����v��b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?\u001c\u001f�/ŵs~\u0014\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[��,y)��äX(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�����\u000f\u0007��Kq�,�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~8e�_�k�)\u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v��Ñ��R\\;gN�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fΟ����9���b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���p\u0018��\u0014��iT,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l퇓����v��b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضo�k�<�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضo�k�:�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضo�kt��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���xK}$-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[���HZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڏ��G�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fo�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R\u001fIKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���xK}$-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};]���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l��[�ci�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڏ����R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fo�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R\u001fKKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���xK},-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[���XZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l��[�ci�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڟ\u001co�O���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R�HKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���xK}\"-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[���DZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l��[�\u0013i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڏ��'�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fo�O���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R�HKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m�N���xK}*-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[���TZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l��[�Si�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڏ�ԧ�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fo�O���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R�JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���xK}*-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[���TZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v��g�[�3i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڏ��g�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fo�Ϥ��\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R�IKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���xK}&-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[���LZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l��[�3i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڏ��g�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷ӵ??�R�KKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���xK}.-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[���\\Z*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l��[�si�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڏ����R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fo�ϥ��\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R�KKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾������BZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l��[�\u000bi�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڏ��\u0017�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fo�/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R_HKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~������\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���xK}!-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[���BZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���d�W\u000f\u000f���Ka�b�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�����\u000f���Kq��R�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~���_�k�*\u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-��R\\;�T�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fn����ڹ���b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���pK��\u0014��-U,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l�[����vn�b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R�/ŵsK\u0015\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[��z)��[�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�����\u000f���Kq��R�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m�N�~y��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m�N�~u��^IKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^IKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m�~]��\u001f~���\u000b_ݽ����n߼�k~�{s��Ã\u001f�_�~���\u000f//�����Ń\u001fn߼.߼��ye���H<�����ܼ�{�6�~w}{�����q}{�����o�����W?\\W�nx��Ã���߽�x�ճ�\u001f\u001f��_��O��������W\u000f�\\=���_<�����ͻ=��������on������\u001f���\u001b\u0019��~���O�~��\u001d����ˋ�N~����ˋˇ\u000f/\u001e|����]�����w�x�����ƛ���\u001f�����qy������7�������\\�^<��}s����Ƿ���O7�w����]<���u��\r��\r����ۻ?>���}�ݿ����ˏo��������o��������ݻ��\u001f�������#��o��\u0003\fz�������O�W������%\\~z��ߦo���\r����\u0007��|��������[���}z�y�:����?vp��uz����ջ��{p�����|����o�]xP_��y�����_����W��v����_�囯�8��y�~+�_����<�������N���?�\u001e����_nn���!���\r\u0000\u0000��PK\u0007\b\u0018�\u000bP�2\u0000\u0000Ϝ\u0002\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0014\u0000\u0000\u0000xl/sharedStrings.xml�V]w�6\u0010}ﯘ�t�:\u0006o�|\u001c�[\u00028�����M��#�\u001c�\u0004$*\t7��=�\u0013;�P���\u000e�|ܙ���sY��\bI9����V\u0007\b�xN��eg�&ݳ���o#)\u0015<�\u0005����R�E�'�5)�<�\u0015a�e���J\u001es�ؓ� 8�kBTY���5았�\u000ed�f�s~ځ��j���H��H���l�$\u000f��\u001a�z[h\u0007��=�\u001c(���ZQΚ\u0016��\u0002�K��\u0011�j��S\u0013��� �\u0012�lp\u0001RaUK��A�\"�Q\u0012�wN�p��m�#_�\u0012K\u0005u�c���o�O��ݵm�N/\u0006�\u000b�i2�D@�}i�=I��|�~L�����j���)����i��0\"�\"9,_`Bٶ�\u0004�\n\u0018WP\t����sk�xI\u00048U���d�}Z�\"'\u0002hN����s������\f<��k�4�/1-��\"R��%�3^j\u0001� Rk��\u001c\u001c��i��0�|\u0005�\u0019�UA U�\u0010�\u0015�f\\0\b1�[�@����\n��[h\r��yײ�L�\u0015��;\\�DB�_^˽$�7�\u0016xY\u0010Xq\u0001��䣂���J\nK\\`�\u0011#\u001f�\u0014ۭ� ,��t���\u0000\u000b�\u0014��G�Oi�울�\u0007��[\u000f)�P��fd�~M���\u0005��Pr���w}�W\u0005�W�\u0019ת\u0015��\u0002w�٣�e�7з���\u001e�Zq�\u0015�D��U~�9x�e�\u000f�j��m$����,����P��~��_�c���u�9I[�w(�DaZhl`�\u000b��u�4��=?B\u0001zxߢ�I\u001f��]7�G(5\u0019��2\u0002H`&q�:Zq\u0014\u0006��@�\u0013����8��ߡ�\u001a�\u001c���O����f��)\"8Z\t^��e�[�}��M�뤥z� Eq\u0012�Nؚ�\u0013.R�$H\u000f�m�a\u0017��\u001d�Љ\\������\u0002�q]���&�DFm\u0006�Vɐ?R\u0006�\"�@��eOodv�\u0006��i:I�����proH\u0002ޒ�#�o\u001a��Q��n�od�!�3ںxgl��3#sjd�Ff`dN��7#c������\u0010���:��3l���\u0010�o�j�h\u0016Gh\u001a>h�A��\u0001\u0018���4\u001d\u0001��LЪ�e�۽bHV��\u001bo\u0017��O �$\u001d�,�\u001e\u0006._�����eW�\u001d��}�yI|/@\u0010D�O�\u0014iY��OU45O�\"����q���\u0003ؓR��\u000b\u0000\u0000��PK\u0007\bS\u0013���\u0003\u0000\u0000\u0012\f\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001a\u0000\u0000\u0000xl/_rels/workbook.xml.rels��Mk�0\u0010����)��\u001f��K���\u0014���\u000f\u0010t4a�\"��u�}�CW�\n\u001e\u0004/\t����@�so4�BO��\u001c�(\u0006��r��m\u000e\u001f���\u0013���\u001bj\u0011��$UG�7�R\u000e2��s�$\u001aA����F7�\u001b\u0011(r�坨��E����q\u0003�I�]�\u001c��N��·\u0018r�v�J\u00121\u0010\u001f�$�\u0006V�:\\2�5����U�\u0006mx �\u0003���\u0018���ҍi�y�nc�~��ߘv��\u001d6�\u001d�4��c�\u001e��-�͚ėў� � \u001f��?�P]&:��\u0015n\u001a���P���<��\t\u0000\u0000��PK\u0007\b�{�\u0001\u0001\u0000\u0000L\u0005\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000xl/worksheets/sheet2.xml̗_o�6\u0010���)\b\u000e��f��-��T��\u000eh� IW`o�t��R�F�V�O?��CYQ:����\u0010Kǻ�Qw<�.y�P1t\u0004���)\u000e\u0016>F�sQP�O�ǻ˟7�e�C�\b�Y�\u0000\u001a=T��\u0014�Z��=O�%TD-D\r��b;!+��BȽ�j\t��F\u0015�B�_{\u0015�\u001cg��]K��L�|/\nH�0\u00058Kj��[�\u001fk����5ُ���z�x\u001d)K\nZ\u00017π$�R�*x�:\f���й��B�Fר��\u0010͵\u0014\u001arm���B�\u0014ͥ�Ձ\u0011u\"�U��\u001d�R��\u0013ވ�B��@\n�'\u000b�\u0014�@�}���;��\u0001���-0�5\u0014'n�\u000e�Q\u000e�_�{�\u0006B\u0001;r`���B0!{��B�bn��0Ң6>.�1\u0013\f�r��[���\u0012��BT�9a����G�\u001f��Tj2��|\u0011\u0007\u001b�n�\u001c�{!>\u001b���&��1L\u0012j�!��.0\"��Gp�q��)Rvi3)\u001b0}����u��K{ڮe\u001f�\u001bѼ\u0005\u0013�\u0014\u0007�b�½Q��%�`��7\u0011a�V����(��\"\u000f)\u000e0�(��J�\u0011è��.S\u001cF\u0018�\u0007�E��\u0015�Ld��\u000b�O|���p�G�\bW���Ǐ\u0012\u000en���w\u0010\u001fo��\u0012�����\u0003dO�\u001b�I�H� i\u0018Y��\u000bs�U�#�t�\u0015Βc�^%���f�'E3؄�Mhm���(�\u0006#���َU���h�F��a\u001dmn�\u0004�\u001c �vs����ds��z�����j\u0000�Z�x\u001c��\u0004��l�j\u0014E�\"��끻���\u0013�z�\r����x��3�i ⳹�����n'�������>�����=�\u001b���3�`B��A��'�A�Stp>�\u0015Y\u0010Π�U�+��vu\u0016D3��\u0014\u001d��v�\u0017,gЫ)zy>��_0S��\u0000���hW��L\r��\u001a\fN�0�6Ux*q�\u0013l\u001e�r�i]v:��=�j�X��r�J(�>�\u0006�]:}���\t���1��%�����M�CW0a����\u0016y�ӑ��\u0016m�f+�F_�ZR��jӕ)T\u00021����#�JnA�-j)$�*�&�\u0002�\u00069�N\u001fAj�?^0\r��s;\u001e�'rO�B�v��\"�ī��v�Z�v�Y�����^h-���Ҷ�\u000e�\u0013B��ѣ�=�)�\u001aդ\u0006yK���8�Q_��Ri�=8T�`��v��:��vhZ12�+i7R��ߕ��� 1\u0012�\u0002פ�Pj!�$TctPpm\u0002\u0004�M�\u0003�\u0014�3�~ŋO%��\u0004�\nIF�G\u000e�]��\u0002n\f��`��ӍO\u0013���)��3��s�\\�Ԝ�`4�\u001d�,i\u0003|iÊ\n�ہ\u0004��+��^|U\u0014�\u001c]�%�(��*{F��Ņ����h��V��\u0007hЍ�\b��\u0006�\u0007F�]�ZAh^%��\u0018^����� {}m�\u001d)��Ϙ%�05g\u0005\u0000\u0000��PK\u0007\b�\u000fVR�\u0004\u0000\u0000h\u000f\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000xl/worksheets/sheet3.xml��K�\u001du����|\n�ƬW�\t\u0011�w\u0003m�~�߯;\u0015D&�\u0012\u0012#�Iu�1\u0005\u0012�\u001c�y�{��e-\u0012)~�p�8��H���������������훯\u001f���ˇ\u000f��|���Wo����i�������뫟߾������{��?x�槯\u001f~������/~����\u001f^����?޽��\u001f^����\u001f^���Oo�����~|w���O���\u0017�_~��\u001f^�z���?־{�W��߽��~w��ÿ�|����o����_�ӏ��~|۾��o����7_}��J�|�ݫ\u001f��|�\u001a\u001e�����\u000f������7\u001f>�W�x�����?���\u000f~~�滷?��޾���������\u001e���۟��~���?]|0y���՛���~����>~��s��uz��w\u0017�߽{��\u0007޽����Ƿ��_��z��/�}�{}�����.n�����Wo���ÿ�}��\u0015����˿�~��\u0019���߾��񿿺���o>|\u0003^?|���\u001f�\u0011ܽ~���x���\u000fg��~����\u0007����\u001f�o_�����͗_������_�÷�|�?����\u0005��\u001f&��߾��\u000f\u001f�p�/?|cￌ\u000f߅\u001f_�����ǧx����_�����|��/��������÷���|�\u000e��o���\u0017ߏ[��Ӌҿ�9���\n����Oϟ<��I�\u000e~�շo_�t��\u001f^��/��7/���������������Û�\u000f~x����?�������\u0007?�����_?|��OO\u001f=|���~z���嗏�3���o߾�?������\u001e��揻ͣ��ytp��z������wy|����a_̓��yrp��z�\u0007}1O?���?w\u0000�}�ͳ�\u0000<�x����\u0001x��./��\u0003������ۼ�ӓ]�_W��\u0015�u�]�x�������^���q��+����?z�߿u�G����)��\u0015���\u001f����|��W��\u001b��7_~\u001a�/��k��6���|Z��?nsn>���\u001f�;7����۞�O�s����ͧ\u0005���6���\n��q;t�i�n��-���F7�\u001e�~ڣ�?n�n?���\u001f�G���\u000b�ۣ�O{t������=�������\u001e��q{t�i�n��=�ݻ��o���g0���ן�����_\u0006�+����⿮��+�z�/~\tS��*|���7_�{��w\u001f>񛯾����p���\r�~���o���7�o����\u001f>��?�r��G~�\u0000%D��o���(�/r����2eL9>^�R�T(5J�Ңt(=ʀ2�L(3ʂ��l(��|���Ͽ\u000e���\u0003|���|��\t����ߝ�<�L!S�\u0014\u001f=ϣ��I��S��)��yF)Q*�\u001a�AiQ:�\u001ee@\u0019Q&�\u0019eAYQ6��H.��ѯ������ߎ��q���۫\t\u000b~9��G��\u0012����'�G��#������/G\u001e��c�\u001f���sf\u0007g�\u001f4��R�T(5J�Ңt(=ʀ2�L(3ʂ��l(��\\���_���/��w$O�\u0016�㙃;\u0005L!S�\u0014�x��?=eʘ��8�(%J�R�4(-J�ң\f(#ʄ2�,(+ʆ�\u001f��\n            <?y���������?\u0010��W�>���/����2�����Q�����W���r��\u0013z���\u0017��g\u001e����/�~������?xī�'��GLO<bv����˫g��\u0019\u000b�\u0012�B�Q\u001a�\u0016�C�Q\u0006�\u0011eB�Q\u0016�\u0015eCُ�b'��ډ�t�?�\u0004O�����?�4U��\b�\u0017_�߿y~5����n��T\u0007C��b蟾��ӫ\u00139>e�R�T(5J�Ңt(=ʀ2�L(3ʂ��l(��\\���_G������Ë�_����ȓ�!�HOe��_��~\t��?É��?Z��x�������Ѩ��\u0015(%J�R�4(-J�ң\f(#ʄ2�,(+ʆ�\u001f�Ũ?�uԟ�E��\u0012��(\u0011J����(\u0019J�R��(\u0015J�Ҡ�(\u001dJ�2��(\u0013ʌ���(\u001b�~$\u0017C��ס}q��z/��0�㙣�e\n�\"����$��)SƔ��yF)Q*�\u001a�AiQ:�\u001ee@\u0019Q&�\u0019eAYQ6��H.����S���*�o/��o^\\����������\u0019���C�����O_^�)�ݝ>o\u0001S���>O������%\u000b���b��\u001a���c�\u0006��ib��\u0016��ic�\u000f�r\u001f~\u0013;_;�\u000e�ә����L߃<���Ѭc��O<`\"\u000f��y���\u0001�ބ��\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f��\u0002|��7����\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H���9��|��ώ\u0006�-\u0010\u000b�\"�X,�h���-\u0013�o8z2�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H������`{�3S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]�������L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�O?�3gJ��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C����i�\u0006�ϟ�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��ic�\u000f�r�?��\u001b\u000e�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9ϟ��\r\u0006�?3\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�������j\u0007�Ο�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��ic�\u000f�r�?��[\f4f\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��y���o��<�ӳ'��Gn�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f��?:=�Xu��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H������s|d\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��qrzܹM2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f��?==�.�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��ic�\u000f�rܟ�\u001ew.�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9��O�;�O��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c�\u0017�ǝ�(S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]�?���?�l�\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~szܹ�2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�帟�����2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�帟�����2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�帟�����2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�帟�����2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�帟�����2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�帟�����2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�帟�����2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�帟�����2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�Ÿ?>]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��qr��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H\u0017���tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.�������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]����U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u0018�\u0017���\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t1�7_�Ϊ�Ga��\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013N\u0017����\t�\\�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8\u001dc��&p�\u0015\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�t��?����V,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�ڄ�\t��(n\u0002G\\�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013N�����\t�w�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8\u001d~��&p�\u0015\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�t\u0013�?���UX,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�ڄӹ��(n\u0002\u0007c�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013N�����\tܒ�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M�9ߘo�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�7Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7�\u001bi�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�4f�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�ڄ��F\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m���|#��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1�Hcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘo�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�7Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�r\u0013n�7�[i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�4f�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�ڄ��V\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m���|+��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘo�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o̷Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7�[i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�4f�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�܄G�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t��7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�r\u0013��o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&<=ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��Mxv�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~l����|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6���.7�����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]l�헧\u001b��Q�\u0004�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�ڄӍ��(n\u00027f�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013N7����\tܘ�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ݘ��&pc\u0016\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�tc�?����Y,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�ڄӍ��(n\u00027f�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013N7����\tܘ�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ݘ��&pc\u0016\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�tc�?����Y,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�ڄӍ��(n\u00027f�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�r\u0013n�7�\u001bi�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�4f�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�ڄ��F\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m���|#��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1�Hcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘo�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�7Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7�\u001bi�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�4f�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�܄���V\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m���|+��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6���~ل/~����}����o���ݫ7�\u001f߿z��\u0007�߽��՛����ÿ�|����\u0007}���՛���\fw�����o߽�_o߼�:�{�����w�\u001e��ݻ����=|��\u0017���7_���w��w}��\u0007������_����\u000f\u000b�������o���͟�|r����{�����}���\u000fG�ዺ{��\u0002y���o~��I>���\u0007\u0019�����\u0007?��������}��ÿ_�}����7_~���_^���}��w��~��\u000f׺�������w����O���<|��ͻ�\u0007����o����4�{����w��޼��e���o߽�����\u000f���]��\u0005�{\u0017�����^���-���/���{������w�~��w/?�j\u001f�������\u001f~�{��\u0013߼}sw�������Ꮿ�~������;��#߾��ՇI����ݿL�|��\u000b\u001c߿�\u000f�{���ܽ�{���V���Ӈ�ﾋ�~���\u001c�����\u0002����?��߃���/�����}|���O\u000f껟\u001f�ox���������/����������W_|�ȇ���(����yp�����\u001f���\u0017��\u001a��ꋟ߾���%���\u000b\u0000\u0000��PK\u0007\b\u0014���\u00185\u0000\u0000��\u0002\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0013\u0000\u0000\u0000xl/theme/theme1.xml�ZOoܸ\u0015��S\u0010�'��\u0019\u001bV\u0016��g�&�5lo�=��8\u0012c�\u0014H���\u0015�c�\u0002E�E/\u0005z�h\u001b`\u0017�%�4i�h�@�BAi,�\u0012��\u001d�כ�}H�'�~�/�#����*f�HE\u0005�p�Q\u001b#�}\u0011P\u001ez�����!FJ\u0003\u000f�\tN<� \n���>���\u0004]Ō�=�p�u��j)?\"1�G\"!�*f3!c�ꑐa+�pIy\u0018�V���i�@9F\u001cb��Og3꓇\u0007Dѐ�'\u000f\u0010�Vp�HL�VF�J}&O�Tu\u0011�����s��>��\u001a3�.�y���@\\��+�\u0011\u0003��Lz����V�ѲH�a��U�\u0005�I�g�\u0015\bR\u000b�6�\f�9_g��}|P��kY�\u0000?<<\u001c\u001fv�ڋp�}��\u000e\u0015)��agT��\u0004�i\u001a,\u0019�\u0007����jM��fw4\u001a\rv]4�\nM��f���?��h�\u0015�AClFO��\u001d\u0017͠B�SO3y���w��\u0014h\"F�y=���r�Y�}؛\t���e�n����QF�o��Ȭ�z�N�ᕐ\u0013������\u001c�EBf�\u0013\u000f�!�J\n7\u0016��\b\u0014�������1\u000b)_�D{��\tp\\X���߿�\n�����߽�ۻ/�x���M\fπ�E�o��������?_���/�\u0002�����\u0017����W t\u0011��o����7�����ӗM��\u0012�E�\u0019��B��Kt\"b��*�Tn\b=��ZP�D\\N��8ԑ��d\u0001�\u00110\"v�_JʃF���W�?���kڄx\u001e�\u0016�H\b6\u0012����ƌ��s\u001e��K΋�\u0013��F�ƥ�9�'\u0011�+���D�r�\u0001�\u0010\u0012N42��9!M��)��sD})��i�9E#�́<�S�F?�10X4�~\u0016�\u0015ѣ�h$X��\u0003raC���\u001a�\u0010fe�c�k�����\u0015!/@G���.�o%Ni\t<$L�À(�\b�T.,��\u0003�+*�-b\u001b\"5=o��\u0000!��\u0003q>� N���<*�~�΅`���n�O�{�<\u000bF�������\r��g4���h��e�^%��!\u000b6\u0003RPg�ae��iG�\u001a��*��u��:W4\u001b'�J���\\;�9?&<j�܏�j9܏����o{cmeG��af\u000f��\u0002x}�[�`o\u0016����(c�z��\u000be�@%\u0018\r&��\u001bi&O��h\u0012���Mˉ݇�PB*DR�Q\u001d�F�\u0010\u000fwpIC�,[r)J��p\u001bۯ�*�KWj�u�h`@��@\u001f� [�k�\u0017��^�-��2�ֺ�3���F��]���\u0018��Gg��\u001f5y�N~d�R���\u001f�\bx���N7�\u000e)\u001f\u0018\tL�������5ީIzF\u0018A@�YW�~�����b\u00155n�\r���jk�����;z���Ά�8����;�ȇ��3\u0006\u001a#?N\u0002\u000f+3\u001a���þ��ju΂�sd�~׽�˅�v-�\r{��Ii\u0013��\u0001�(#NW��˸#T�Aߤ�vcպm/z�·�E��p2�\u0011_;���:{�j�b��<��K4esy\u0002����v\f��\u001e�^?H\u000f\u000f�˝j7xw\u0003+�w��t!�$�e�\u0019������#r��Yp�|#.��b��\u001ecW�Y�cw��[�\u000e�I/�\u0004�H@�9xXH\u001d�PB\u0012Q\"\u0005�.\u0017�Ј�6\u0001@L��I.J�\u0013-���+j\u0019\r#}BC$i�a\u001dIB��2��Mk��<P�\rl��\u001c#G,L�\u0012Gx�䂰3��wL�0���S��Z���-���:\r'?�+a��<\u0015Z.��y\b�7]�\n\u0007�ݻ�v\u001bg��#�5��\u001d44�u\u001dٯ9�'�#d��O��\b��o��g��\u001a�W\u0015�=�p�l��p��ΰ��mT�[�C��:������(�Z���Zk�p�\u0016jm�(5��^�Ҍ�5/�<��hDFP�i�9\u0001M_\u0011_\u001f�\u0019�Y��b*9 �\\�y>����T\u0004\u000b[�T6ˊ2U9�1~Bf�\u0006W��P���o�����\u001b��@笽�X�\u001c\u0016o6�s��f�9�m��7���\u0015��as�Q,�B���H��4����\rc�\"���X���5����\rr�g�<Tw���JK\u0018_���ҭ'\u000f����\u0001\u0000\u0000��PK\u0007\b�h��\u0006\u0000\u0000�*\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000docProps/app.xml��AK\u00031\u0010\u0005����0�nV\u000f\"%�E\u0010�x\u0010\\�א̶�d&dƲ��R\u0004�Ǚ\u0007\u001f��Z�9a��4�]?�A\n\u001c\u0013\u001dF��_6�`D=E��p�3\n�ν7��4���d�\u0011��uk��#\u0016/=W���[�*=���eI\u0001�9|\u0017$����`qU��qS�@�\u0015�'�\u0015�\u001c.��k>W\u0014�:c����\nN����\u0012=՚S𚘦W6���������׽�O\u0000\u0000\u0000��PK\u0007\bf��q�\u0000\u0000\u00004\u0001\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0011\u0000\u0000\u0000docProps/core.xmll��J�0\u0010��OQr�L��Hi�7O\n�\n^C2v��3dF�}{٢Up���\u0017��\u000fK��'V\u000e%\u000f��F5�]�!O�zy��ݪ��foc�8�\u0013�:�W��Ε���\u0010V\t�͒b��Ѡ�\"�\u0001�;b��\u000ba^R|+5Ya]�\u0004dݻ�\u0010���@B�ފ�spG[Q}'�ے�Q�\u001a�\u000e0b�,\f�n�צ '/~��`M|\u0011��M.\u001c65ϳ��W�7��ׇ�������S9Tc\u000f�\u0006\u001a�\u0002\u0000\u0000��PK\u0007\b;�|\u001a�\u0000\u0000\u0000l\u0001\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0013\u0000\u0000\u0000[Content_Types].xml̕M��0\u0010���\u0015F�b)���\u0014�{�Ǳ]hz.�4�E$��&���4!\u0014�\t!\u0017��y�G3ਫ਼\u0006g�\r�d���/X\u0001^�6�������\u001d{j^T�m�T\f��T��(�\u0017\"�\u001e�L\u001c\u0003���\u0016���8�N\u0004�V�\u0003�X�\u0015\n=���r\u0006k��\u001b��h(�e�/�A�ď\b6\t�OV|�\u0015df�d\b�(I\u0006��x}B+��\\9~�z\u0013���Y�T�@:�Ԩ�#�$d\b<W�\u0002c�\u001a\u0005\u001a�ځ'\u000e\u0003�נ�\u00101@$\u0003s-\u0014F��qx���\u001e��0�~\"�2��C\u0018�H����Q4�K�;p2�\u0014\"H�z\u0000r�\u001feO7��������\u001d�\u001e�5-�͝4~�\t��`w>\\l3�LF�&��I�����n���o�ǻ3zuwF������>B+ז�OyA���{�YԿ�y\u001a �5��\u000e\u0000\u0000��PK\u0007\b�\u0000C5u\u0001\u0000\u0000\u0015\b\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u000f\u0000\u0000\u0000xl/workbook.xml��Oo�<\f���\u0010xzwXl�i�\u0016��m��\u0000�S,Yګ\"ѱVI4$�I��\u0007;��\u0000ݐ�MR���C�7[��3�d)H(F9\b\f��\r+\t?�\u001f�^�M�_����$z\u0012[�B��0��Y�t�^�\u0011�\u0018���\u0014��4���R\u001bQ�� �w�8�/2�l�\u001d�:� ��\u001aoI�=\u0006�A\":ŖBjl��*k�p��_����<J�D����\u0011�2\u001bԫ?2�H\rm�-��$A9\u0007�(��*�H��K�5\u001f�\u000f{�Qs��^Kv���&\u001dz�����E����H�I�F�k\u000b�l�k�Y��\\-�>�j��sA�8����`hs�vհ���j��=XÍ����r\u0002b��'%� ^\u000e�\u0003\u001dݠU�\r$�\u001b�E�흭�W�\u001b\u000e��FB\u0001\"^[#!NM\u0001\"�b��l�]�����1�r*h\u0014w61\u001d��\u0003��DڜZ1�*$կ!\rpg\u0003�ى�w��\r7\u0019�&'�A�G�?9�f�:\u001f������[0Xۀ�{�*��P+��Q1~�u`\tE���X!��*`_�E�JB>��j�=x\u000b��\u0000\u0000\u0000��PK\u0007\b�\f���\u0001\u0000\u0000\u001d\u0004\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u000b\u0000\u0000\u0000_rels/.rels���J�0\u0010\u0006��>E��6�\u0015D��^D؛H}��L��$\u0013&Q��\u000b�������7�t�\u001a�xEΎ��]ӂ�hȺ8)x\u001a�7p�7�#z]\u001c�<��E\r>f\u0005s)�V�lf\f:7�0��G�Kn�'��Y�r߶גv@�\u0011�V\u001c�\u0002>�\u001d��=�z\u001aGg���K�X���+\u0001b�<aQP�|#^����\u0006\u000f�,g��s~[\u0019�h����\u0018��)!\u0017��[d�<0����`�Zo�|\"�\u0005�E��J�����7�\u001f\u0001\u0000\u0000��PK\u0007\b�Ξ��\u0000\u0000\u0000D\u0002\u0000\u0000PK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000^����\u0003\u0000\u0000�\u000b\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000xl/worksheets/sheet5.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000��1�\u001d\u0004\u0000\u0000�9\u0000\u0000\r\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�\u0003\u0000\u0000xl/styles.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000J�Zr :\u0000\u0000��\u0002\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000L\b\u0000\u0000xl/worksheets/sheet1.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0018�\u000bP�2\u0000\u0000Ϝ\u0002\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�B\u0000\u0000xl/worksheets/sheet4.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000S\u0013���\u0003\u0000\u0000\u0012\f\u0000\u0000\u0014\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�u\u0000\u0000xl/sharedStrings.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�{�\u0001\u0001\u0000\u0000L\u0005\u0000\u0000\u001a\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�y\u0000\u0000xl/_rels/workbook.xml.relsPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�\u000fVR�\u0004\u0000\u0000h\u000f\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�z\u0000\u0000xl/worksheets/sheet2.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0014���\u00185\u0000\u0000��\u0002\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�\u0000\u0000xl/worksheets/sheet3.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�h��\u0006\u0000\u0000�*\u0000\u0000\u0013\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00006�\u0000\u0000xl/theme/theme1.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000f��q�\u0000\u0000\u00004\u0001\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000>�\u0000\u0000docProps/app.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000;�|\u001a�\u0000\u0000\u0000l\u0001\u0000\u0000\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000A�\u0000\u0000docProps/core.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�\u0000C5u\u0001\u0000\u0000\u0015\b\u0000\u0000\u0013\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000X�\u0000\u0000[Content_Types].xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�\f���\u0001\u0000\u0000\u001d\u0004\u0000\u0000\u000f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u000e�\u0000\u0000xl/workbook.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�Ξ��\u0000\u0000\u0000D\u0002\u0000\u0000\u000b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000.�\u0000\u0000_rels/.relsPK\u0005\u0006\u0000\u0000\u0000\u0000\u000e\u0000\u000e\u0000�\u0003\u0000\u0000M�\u0000\u0000\u0000\u0000"},{"id":"10acce8d-6b70-42ab-a4df-3cbdafbcf78d","name":"/composite_statement","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/composite_statement"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"X-GUploader-UploadID","value":"ABPtcPpooqS1lVe67ctXMWBrk6miYBEAD5LbH0O2ppC2vVyp7rUXvXkVjnDwMgVNvEsYbL9uAk0"},{"key":"Expires","value":"Thu, 11 Jan 2024 07:55:13 GMT"},{"key":"Date","value":"Thu, 11 Jan 2024 07:55:13 GMT"},{"key":"Cache-Control","value":"private, max-age=0"},{"key":"Last-Modified","value":"Thu, 11 Jan 2024 07:55:12 GMT"},{"key":"ETag","value":"\"9a94d8ca4fa5f5bcee51b5eca0eb1369\""},{"key":"x-goog-generation","value":"1704959712701569"},{"key":"x-goog-metageneration","value":"1"},{"key":"x-goog-stored-content-encoding","value":"identity"},{"key":"x-goog-stored-content-length","value":"50939"},{"key":"Content-Type","value":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"},{"key":"Content-Disposition","value":"attachment; filename=\"composite_statement_1704959712.xlsx\""},{"key":"x-goog-hash","value":"crc32c=rRWWDw=="},{"key":"x-goog-hash","value":"md5=mpTYyk+l9bzuUbXsoOsTaQ=="},{"key":"x-goog-expiration","value":"Fri, 12 Jan 2024 07:55:12 GMT"},{"key":"x-goog-storage-class","value":"STANDARD"},{"key":"Accept-Ranges","value":"bytes"},{"key":"Content-Length","value":"50939"},{"key":"Server","value":"UploadServer"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000xl/worksheets/sheet5.xml�VKo�6\u0010��W\u0010,�S�ڗ_���]�M\u0001�^x�\u0006�+�V�I�JR+ۿ� �\\ۧ��كV�\u0019~\u001f�\rř�ヒd\u000f�\n�\t�M���ΐ\u000b�K藻�_O�����Fso\u000b\u0000G\u001e��6��s��(�Y\u0001��\t��\u001f���(��\u0004�.��\u0001��$%��tz\u001c)&4M�`[\u001b�\u000b��|F\u000e\t͙�@Ӹd;؀�R\u0006���5ۍ��ȟ�Q���\\(�~\u000f�@�������\u000f��-�_\u0002j;z'��\u001c�A\u0007�\u000b\u001a4T�\u0016X_�Q�d����\u0011�Jh�\tu�j��X�P~\u0002��\u001c8�\u0006����]���\nr�C:�݀��\u0001?����\u0014\u001a6�j��G���J:��\u0015J4�}/�N���KJ\u001c��c\u0005Rz-(�|�<��KJ�\u0010�&c\u0012\u0012:�NG��0���'��=b\u0015\u0004k��\n<l\u0011���N}Z�6|\u000eJ�!��*(a�\u0013{\u0018V3������fͧ�����9��]�.�a[�N�[�?�W8�����v���4�P���HVڑ��\u001c��+���\u0005%J��\u0012�\u001e�b�Ԃ�\"p\u001c/(�*�P}ml!\u0019i\u001ce(\\�eK�|�f���ވf�b7��lr�\r��\u0016q�f���7C|)��\"�G���E�]g\n    <j��p7]0���`ML�\b�����\u0003讴\u0016!�q�\u0012�\t]�(q\t�4����q\u001c�=v\u001b�[\u001b3\u001f�̗�1�Wb���1\u0017m�b\u0014s:�D\u0006�˹�Ki�v7���-)��Vb����z>�l��&)Ј'Ԏ�\u0015h\u0007f��=\u0018'��\u000e�\u001b���N�33;�-���N''�^X�(�\r\u001d���9����SJ��\u001c��\n        <E(�\u0003@��F�Ki����*I�J0\u001b�\u0004\t=�Ďjp.�u��^Wj\u000b�Q\b�O{~�a_�(�7&,�c��\n�7{0��\u0011�\u001dk��\u0012�3L8J*\u000bk/\u0010���^\u000e)�J�ݟk��\u0010�o�\b7lԧd �\n�\u0002�'j�\u0010 /�/�y\u0002/J�Ѕ�c����a)�I��:��L�F�� +�\"���v�jX]g������}�1r�4b�;��\u000f��|��b��N(��\u001ajr���_naWIf�/D����<�\u0006\u0010��,�[�4$��\u0003h�\u0014G�=�q�7��\u0001\u0000\u0000��PK\u0007\b^����\u0003\u0000\u0000�\u000b\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\r\u0000\u0000\u0000xl/styles.xml�mo�6\u0014���SD�4m�n�\u0000���\\u�fڛiںio]b��\u001f\"��H?�>�>�d�\u0012�B\u001dpHBF���O��\u001f�\u001c�\u0006\u001a|ZQ�\n            <!�b�&�����،ǘ-&�����{�)�\"HeF�oK������\u0013��2��u��\u0012Q�^�\u0004�\u0015%s.(��5\u0017\u000b7M\u0004�q�&Q�\u000e<o�R�\u0019\b\u0003�H#*Sg�\u001f���Ѧ��\u000f?�\u0013��G�ɗ��\u0018M\u0000���������C�e\u0019pK'��N��������>|�g�xw�Z�\u001d�{\u0006��\u000e��|�k�k�S\u0013��]����ݛU\ra�>;O�L�\u001e� E������9��d[cfK(R$�[8��\u0011��\t�\"O�h�\\`W�\u001f����D\f\u0019��T�d��?4'�\u000b)}Po\u0014&d�F݂�!\f\u0012(%\u0012,8���,A\u0013�8C9\u001c=�0���R�(`V}J�\t��\u001d���ML�σh�y��p�ִT��_%jEG�jQ\u0014\r��\u0012���N��z��m:jT�~��.z_��m:J��!\r�\u0007.b$v<4o\n\u0003����Yz�aશ0\u0010��^w��0�<y�#y�V����]y�>�E���\b���\u0011<��\\��g_δ�ðt���\u0019�ZOQ�\u001f�a��#6�Tb�qN�{8�\u0013��M�i\\��{X��a0C��9/�\u0018UǬ�\u000eL\u0012��\u0011�`\u0014�v\u000f�M��y�uķ{Uv+�~~�\u000fHD��*Z\u0011\\���u�\u0007��\u0010U�y�Q���3�>-j4\u000f�\u0001|1�Yr��9��\"X �\u0004$��,~18]\n����\u0011ί%Z�_��\u001b�'$$���9 ��-`r�V�:Z�Ki�o����W���]�Қ��\u0017'٢1h�I$O�Ϥ��9\u0015\u0013ߚ���'o�����:vT!�5 ��3�\u0004N�Lt��?\"\u0016�p\u0017æ\u001c�\u001c��<2�`&�۸�H�g\u00147��Ʌ�\u0011�sFH\u000e\t���a��Tb_����p:���OF��ӥ\u0013�y��J[��_?���Vӟ4����b�ar�uz�a�w���1��\u0013���^&~w�X< ��I��ĂI[�pc@\u000e\r�\u0019b\u0012��!i/�4�!��:������YR�T�Z�KwCȢl;�4{����w��&�Q��)�29$t,�)�3t�=P�_07!�m�X<�o��_?�*�O�L�(�\u0018�T����~bL�C��TH�-2i�Sn�T�w������񏋝Q�d�Z�X�\u0019x��rs�R�e�u,��{�a�\u0016��\u0019�\u0017\u0000\u0000��PK\u0007\b��1�\u001d\u0004\u0000\u0000�9\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000xl/worksheets/sheet1.xml��Y�\u001du�����_�L���\u0006b��\rj+|��m�T\u0010$�\u0012\u0012#)��^��6�q��[%366�u����\u000b?�\u0013_W\u0006�P~�?���\u0017�~�{������ݿ�����^�����/����i������������_���7?�ݽ��￼x���?�}�����7?�|�˳7_��������W�y���W�^���7���{���w������|���_�=y����־����\u0017o�^W�~����O�^������_���n�{;���ߎ��g����̟~���+=����ܽ|�{���������ۮ\u001f|��\u001d����;?����g�|���/|�{���ۻ\u001f޾\u0016><ؽ7?��=~�����x������?��_޽�������������\u0017�ݳ\u001f�^_��~���\u001fox��o?�\u001d_�w?���o���p��w?~�~��߾x��n�����\u0017\\�ǻ������w\u001fB��ūן����߿�����������~}�\u0010�݋\u0017��~xw6���\u000fo����W�~\u0019~x����W�|�ٯ�����@�������룾\u001bĿ�z�o������7�\u0017�>\t�>{y����\u001f��{�~x����??�?��]��?>~��}���̧O�����?}���kk_zR�W��w����_]����O�����ox�����|���x��w�����������O�/�����\u000f������\u001b���7o���g���ߟ������_=�����{?����W�,\u001f������ۯx��\u000f����y��a\u001e\u001e=��_�0�>>̣��y�գ\u0007��<��0��\u001e��W�\u001f�5\u000f����<9x�뛿�a����7<̓�\u001e�g���%\u000fgu���_�����C��\u0015�y�^�W�O\\��\u001f����+^�eW��xś�슷\u001f�x��]��W \u000f��+~���?z�/���G���\u0010��\u0015��j�\u001f���7�&��_w̓/\r��k~�q���;��ӭs���;W�n�������\u000b������t\u0003]�uw�է[�꯻��>�DW�]t��6�����O���_w\u001f]����������\u0002����O���_w\u001f]���������}t���G�7���?\u001f���\u000f���=�\u0013\u000f���=��\u000f������?���+���_�:�KO�����߾~�������}\u000bz���|\nD\u001f����ݹy�\b�_ix���7��~���o����wW�x����?$@\t?��\u0012��(\tJ����(\u0005J�R��(\rJ�ҡ�(\u0003ʈ2��G���W����볛�~�\u0007�m�j����?7�\u0012�D(�5n\u000e%E�Pr�\u0002�D�Pj�\u0006�E�Pz�\u0001eD�P�#��������������>���O�\u0013��\u001an\u000f%B�Q\u0012�\u0014%C�Q\n�\u0012�B�Q\u001a�\u0016�C�Q\u0006�\u0011eB���b{�g�w���nw���ă���'��\u001eJ�\u0012�$()J���\u0014(%J�R�4(-J�ң\f(#ʄ2\u001f���\u001e��ރ/��p��/O<�mo����D(1J���d(9J�R�T(5J�Ңt(=ʀ2�L(�\\l����=�bY�w���ē���'��\u001eJ�\u0012�$()J���\u0014(%J�R�4(-J�ң\f(#ʄ2\u001f���\u001e���#z��Q\u0002�\u0010%B�Q\u0012�\u0014%C�Q\n�\u0012�B�Q\u001a�\u0016�C�Q\u0006�\u0011eB���bk��n���+=��J�=�ڿ��\u0018G�\u0012�D(1J���d(9J�R�T(5J�Ңt(=ʀ2�L(�\\�����=���\u001e%@\tQ\"�\u0018%AIQ2�\u001c�@)Q*�\u001a�AiQ:�\u001ee@\u0019Q&��H.�v��ٱ��V��Kv���8���B��)�HG�cJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C�\u001c��\u0004�e���W�\u0017\u0007���$W��\u0007���g+� \"ED��4\u0011�\"RE$�H\u0017�0\"eD҈�\u0011�#RG$�H\u001f�@\"�\u0004iaZ��C�\\���r�-���W��!?�y��\u001e������\t�\u001fg\u000eV�/�GL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t��ә����s�`��3\u000f�+���\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d���O\u0007��/{�գ��\u000f�<ޯ��\u0012S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH�+?����,SWO�+�p��gg��ٯ|法s�b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;�˕��dWXC�g\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7}:�]}h+�\u0017��/^.�\u000e�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t9�ӵ�\n���L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d��O�ī\u000f���s��K��3��\u001b)d���+n�L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH�?mp:^^hE�?\u001f���\u0007\u000e>�y���ݫ��љ�k��5&��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.�~:g^�FW�|���7�^ct\n>��՗\u0016�EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t9��\u001d�\u001aC��\u001f���h�ײj�L1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t������C\u001d��C{�t>\u001d:���웋%S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]��t����F^�\u0018�㙫Ͽ��z�� �\u000e�~�\t͛���nn�_�s�d��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;�˽�n��\u0018��g\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7}�T^(D��Hx��9�/�|6n��)�HW�{\u00037K��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��u�n��\u001f\u0012��J�ጿJ�噛��\u0017(\u0007gv/�GGgv\u001fO|�]�)eʘr���d��j���e�z��id��f��ie�\u000e��\u00068�5��k2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH��>�5�?d����D���;?\u001e:�\u0006�@,\u0014���k��L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH����y�\u001c]}�u����z>\u001d�WV>\u001d�������h�K��W\u000f�|�pw������o���\u0013�p�dJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C�\\���ysu�����|:���|��|���~��\u0007���_�{|�\r�)eʘr���d��j���e�z��id��f��ie�\u000e�r��\u001b��ǘ�y-��'�O����?\u001c����\u001f�\u0007ÿ8\u0002�_�y�����Uo8�2�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]�\u0000�s�\rV��\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M�N�7X��g\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7}:��|�O�~W�oOo������Q3b\n�\"����(Sʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d��O\u0007ћ\u000f���_>�/.\u001e�������V�\u00141�7\u001cF�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.W~:��|hL�����>���;�oOo��+ǌ\u00152EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t������'S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t������Cg��\u001b�n��_=ٟ�l�H!S�\u0014�p�dJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C�\u0018����y�!#]_���7l\u001d\u001e�����\u000fv~y��ɋŷ�;�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7:w��\u001b�oOo�������������1eEL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t9�ә�v_�~{z��\u000b���|1�/�<�w�\u0017g>�;R̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]��tԼ�Ǥߞ>���Y\u0007g����u�Q��3�͝{'S2eL9S�T2UL5S��2uL=��42ML3�´2m�t9�ӽ�vߙ~{����߿<���\u000f�s��;�P��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C����\u0014z�1�~�]�\u000f�ߪx��S�=}���ɏ�<��\u001d\u0003X�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH�{?\u001dGo�\t귧\u000f�q���\u0017s?8�d?w,a\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]��t%����>�Wң3�Jz�L�ř��ι�)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C����\\z˹�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C����\\z�e.}�ϥ_��lܜK�\"���s)Sʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d�Ÿ\u001f�Υ\u000f�\u0019귧\u000f���\u001c����/���r��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.W~:�>�0�=S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u0015�\u0001֧�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M�N�\u000f01}�\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]n�t�|�\u001d�{��)d��b��)eʘr���d��j���e�z��id��f��ie�\u000e�rӧ��\u0003lE�3\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH��>\u001d&\u001f`\u0010��)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C������\u0000���L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d��O'�\u0007�\u0018�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M�N�\u000f0�|�\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]l����\u0010���L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d��Owć�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M��\u000f�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH��>�\u0011\u001frGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]n�tG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C������;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�!wD��)d��b��)eʘr���d��j���e�z��id��f��ie�\u000e�rӧ;�C�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d��Owć�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M?:�\u0011\u001fqGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]n�tG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C������;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�\u0011wD��)d��b��)eʘr���d��j���e�z��id��f��ie�\u000e�rӧ;�#�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d��Ow�G�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M��#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH��>�\u0011\u001fqGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]l�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�1wD��)d��b��)eʘr���d��j���e�z��id��f��ie�\u000e�rӧ;�c�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d��Ow���\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M��#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH��>�\u0011\u001fsGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]n�tG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C������;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�1wD��)d��b��)eʘr���d��j���e�z��id��f��ie�\u000e�b�ONw�'�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M��O�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH��>�\u0011�pGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��.7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�!]n�tG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��C������;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�\twD��)d��b��)eʘr���d��j���e�z��id��f��ie�\u000e�rӧ;�\u0013�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ\u001d��Ow�'�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��i;��M��O�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�vH\u0017����tH|\u0014V-\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~:1�?�k��(\u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[�����(���X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n�������v\u000e�b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���\u000e����9Y��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~:e�?�k�)\u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[�����(��3�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n�������v\u000e�b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���\u000e����9���b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~:��?�k�h*\u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v����-�JZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z%-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��^IKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�W�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul;���Ϸ�+i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[ꕴT�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�JZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z%-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷc�\\����z--�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��^KKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o���R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul;���Ϸ�ki�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[굴T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�ZZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z--�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱]���|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~���HKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�Ro���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�7�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul;���Ϸ�\u001bi�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[ꍴT�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�FZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z#-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~���HKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���.�~{���JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�Ro���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o���R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul;���Ϸ�[i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[ꭴT�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�VZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z+-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~���JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�Ro���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl�kp��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱]������PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����PZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v��G�[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d���\u001f�o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl�kr��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱]�����-��QX�X \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����(��[�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[����vn�b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���n���ڹ���b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~���?�k�*\u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����(��[�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[����vn�b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���n���ڹ���b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~���?�k�*\u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[����(��[�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d��گη�+i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[ꕴT�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�JZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z%-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��^IKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�W�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul;���Ϸ�+i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[ꕴT�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێ�r���[굴T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�ZZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z--�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~��^KKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o���R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul;���Ϸ�ki�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[굴T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�ZZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v����-�FZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z#-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~���HKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�Ro���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o�7�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul;���Ϸ�\u001bi�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[ꍴT�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�FZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z#-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷc�\\����z+-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱��~���JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V���vk?�Ro���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��vl���o���R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul;���Ϸ�[i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�\u001d�n��[ꭴT�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015ێm���-�VZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mǶ[���z+-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷcۭ�|K����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۱]������@Z*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m��a�_�����m����������˷ͯo��z����w�~|��oo���ӳ\u0017o�������?��_�\u001d�e��tK�����������g/���o�^�������^�}�×��ۯ?�����owճ�{��ͽ\u0017w?����7_=z��&|�����˷�~����W�<�~���=��__�}��#y���{��\u0005~z���g�~�����\u001f>��������_�^\u000f����������ً���_}���{?=��m��ow����w׺z�������o���为��e���?�\u001f_��r���e������^�~~����wO�w�}����g��޿��7w��'��ux�ӳ��x���__<��������������\u001f_?{��}��\u000fw/^\u0004�~����w|�����K��\u000f|�\t\f}����w��O��?��ë_��[�է�������\u000fOp��i����~�{}������������\u001f���^���W?���������_�{��?����������{s����^��g/����o���{{�������o���\"���C��\\��Ss��?��/��J�~�����_�����������\u0001\u0000\u0000��PK\u0007\bJ�Zr :\u0000\u0000��\u0002\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000xl/worksheets/sheet4.xml���s]u�g���+\u001c��~�\u0006K�wc:*��~�͛\u0013\u000bp�m1�H�ꯟ���9�k��Iw�CS\u000f\t>��ߖ���`U�7���޽}����\u000fon޿�����Ń���ݼ~����\u0017�\u0018���\u0017�����_nn��Ï��w\u000f�����\u001f^^�xw�����\u000f��x��Շ�n~�~�o��~s���݇�nn���O�ׯ^�ѻ�__=|���w�޼��������\u0007߿y{w}[ݼ�~y����\u001f�/���W?\\\u000f�w�O�~7޴�~�\u0013�'����;��o^�yw���������//���mWW�\u001f��w�����_>���\u001f�����_�ۛ�����߅_o��Ï7��7��~~���ɋ������\u001f^^����ۋ��/���������\u0013���oo~���\u000f?ލ7���w�\u001fy���������_�ܦ������ÿ������Ox}������}�\u001e���7��^�Ǜ�_^^���\u0001��xpw���{\u0004�o�~|7.\u001e|�����ˋ��/\u001e���ͻ�Wo�_^\\>|��_��_~��Ǐ�|��7?߿a���E����_?���܇\u001f?�����O�W�_^��]\\<x��ݛ\\������_���������G��1�>�������������ޔ�����;������O.>}ѧ\u000b��滛�\u001f����;���O\u001f���������?>�w������Ńwo�����ݿ߿c\u0017\u000f~y�����{<}t�ໟ?�ݼ[~}���������y�?s���ns�s�GϾ�m\u001e�v�G{��/w�ǿ����m�������������G�t�χ���ۼ���_'�u�_'�u�_'�o~��?y��?i��'~�C�?{��??��'>��\u000f���O?\u0016<�b'>���g_��翝������\u0013_|�\u0013/\u001f~���/w��͗{n.?=8�_�ɹ���\\~�g����s�垞�O���{~.?=@�_�\t���\b]~�g���Ct�垢�O���{��>=GW_�9���\u001c]}�����?���st��9��r��է����=GW����/�\u001c}�\u0013���<��_P����?��\u001c�'��?�ۿN��ĿN��ĿN���į�$��$|u���ono~yp{���u��WϞ|�c�Sr��ϕ�>^�/\u001f������\u0007w//>\\|��?�}�蛯����߮�ۯ�<����%@\tQ\"�\u0018%AIQ2�\u001c�@)Q*�\u001a�AiQ:�\u001ee@\u0019Q&�\u0019eAYQ�=�����7|ut�W�'�y��M��K�?>�$�����\u0007!���\u0017�����K�?9�$���(\u0019J�R��(\u0015J�Ҡ�(\u001dJ�2��(\u0013ʌ���(۞���ѯ3�P7���|��������?Z���gg#�����G%���G'+q��ߎyx���\u001e�-��.,\u001c%E�Pr�\u0002�D�Pj�\u0006�E�Pz�\u0001eD�Pf�\u0005eE���d�\u000f-��g�|v���;\u000b?�o��1�-��?���������揉��(\u0019J�R��(\u0015J�Ҡ�(\u001dJ�2��(\u0013ʌ���(۞�L�ɡ�?�l�/�~~�ۓ���m3����&���ğ�L�鋯��]\u0011��菑��(\u0019J�R��(\u0015J�Ҡ�(\u001dJ�2��(\u0013ʌ���(۞���顑?�|�g?\u0001����#qu6�Ϗ�l�O\u000f���G��g���o���QR�\f%G)PJ�\n�FiPZ�\u000e�G\u0019PF�\teFYPV�mON&���?s>�{�\r%@\tQ\"�\u0018%AIQ2�\u001c�@)Q*�\u001a�AiQ:�\u001ee@\u0019Q&�\u0019eAYQ�=9Y���}��E\tPB�\b%FIPR�\f%G)PJ�\n�FiPZ�\u000e�G\u0019PF�\teFYPV�mON����r_�rQ\u0002�\u0010%B�Q\u0012�\u0014%C�Q\n�\u0012�B�Q\u001a�\u0016�C�Q\u0006�\u0011eB�Q\u0016�\u0015eۓ��^><:�������2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u000e����)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�!�oL\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u001f\u001d�4���1\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��~|x��j��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n���Mc��\u001bS�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t�駇7�-�oL\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000f��KnL\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000fG�K��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000f��K�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ�������x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:���x�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:��\u0012;�\u0011\u001fqGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n�pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�\u0011wD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�tӇ;�#�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000fw�G�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��iۥ�M\u001f�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u0011\u001fqGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�l�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�1wD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�tӇ;�c�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000fw���\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��iۥ�M\u001f�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u0011\u001fsGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n�pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�1wD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�d�O\u000ew�'�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��iۥ�M\u001f�O�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u0011�pGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n�pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�\twD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�tӇ;�\u0013�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000fw�'�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��iۥ�M\u001f�O�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK'�~z�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n�pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�)wD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�tӇ;�S�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000fwħ�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��iۥ�M\u001f�O�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u0011�rGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n�pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:����\u001d�\u0019wD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�tӇ;�3�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000fw�g�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��iۥ�M\u001f�ϸ#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u0011�qGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n�pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�\u0019wD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�tӇ;�3�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ��ɦ�\u001f�Ϲ#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u0011�sGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N7}�#>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n�pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�9wD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�tӇ;�s�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000fw���\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��iۥ�M\u001f�Ϲ#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u0011�sGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N6��pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t���\u001d�\u0005wD��)d��b��)eʘr���d��j���e�z��id��f��ie�v�tӇ;�\u000b�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ���\u000fw�\u0017�\u0011�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��iۥ�M\u001f�/�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+ӶK��>�\u0011_pGd\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V�m�N7}�#����\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L�.�n�pG|�\u001d�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ��]:�����;\"S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2m�t��ˇ�C����j�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l�\u0013����v��b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?\u001c\u001f�/ŵs~\u0014\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[��,y)��äX(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�����\u000f\u0007��Kq�,�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~8e�_�k�)\u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v��Ñ��R\\;gN�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fΟ����9���b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���p\u0018��\u0014��iT,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l퇓����v��b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضo�k�<�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضo�k�:�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضo�kt��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���xK}$-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[���HZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l��[�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڏ��G�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fo�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R\u001fIKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���xK}$-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};]���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l��[�ci�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڏ����R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fo�����\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R\u001fKKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���xK},-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[���XZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l��[�ci�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڟ\u001co�O���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R�HKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���xK}\"-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[���DZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l��[�\u0013i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڏ��'�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fo�O���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R�HKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m�N���xK}*-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[���TZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l��[�Si�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڏ�ԧ�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fo�O���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R�JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���xK}*-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[���TZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v��g�[�3i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڏ��g�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fo�Ϥ��\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R�IKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���xK}&-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[���LZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l��[�3i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڏ��g�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷ӵ??�R�KKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���xK}.-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[���\\Z*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l��[�si�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڏ����R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fo�ϥ��\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R�KKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��>���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾������BZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l��[�\u000bi�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����ڏ��\u0017�R�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fo�/���\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R_HKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~������\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���xK}!-�-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[���BZ*[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-���T�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���d�W\u000f\u000f���Ka�b�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�����\u000f���Kq��R�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~���_�k�*\u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��m�v���-��R\\;�T�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul۷��\u001fn����ڹ���b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b۾���pK��\u0014��-U,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���l�[����vn�b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b�ضogk?�R�/ŵsK\u0015\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[Ŷ};[��z)��[�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*�����\u000f���Kq��R�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m�N�~y��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^JKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m�N�~u��^IKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m���~��^IKe\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�m�~]��\u001f~���\u000b_ݽ����n߼�k~�{s��Ã\u001f�_�~���\u000f//�����Ń\u001fn߼.߼��ye���H<�����ܼ�{�6�~w}{�����q}{�����o�����W?\\W�nx��Ã���߽�x�ճ�\u001f\u001f��_��O��������W\u000f�\\=���_<�����ͻ=��������on������\u001f���\u001b\u0019��~���O�~��\u001d����ˋ�N~����ˋˇ\u000f/\u001e|����]�����w�x�����ƛ���\u001f�����qy������7�������\\�^<��}s����Ƿ���O7�w����]<���u��\r��\r����ۻ?>���}�ݿ����ˏo��������o��������ݻ��\u001f�������#��o��\u0003\fz�������O�W������%\\~z��ߦo���\r����\u0007��|��������[���}z�y�:����?vp��uz����ջ��{p�����|����o�]xP_��y�����_����W��v����_�囯�8��y�~+�_����<�������N���?�\u001e����_nn���!���\r\u0000\u0000��PK\u0007\b\u0018�\u000bP�2\u0000\u0000Ϝ\u0002\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0014\u0000\u0000\u0000xl/sharedStrings.xml�V]w�6\u0010}ﯘ�t�:\u0006o�|\u001c�[\u00028�����M��#�\u001c�\u0004$*\t7��=�\u0013;�P���\u000e�|ܙ���sY��\bI9����V\u0007\b�xN��eg�&ݳ���o#)\u0015<�\u0005����R�E�'�5)�<�\u0015a�e���J\u001es�ؓ� 8�kBTY���5았�\u000ed�f�s~ځ��j���H��H���l�$\u000f��\u001a�z[h\u0007��=�\u001c(���ZQΚ\u0016��\u0002�K��\u0011�j��S\u0013��� �\u0012�lp\u0001RaUK��A�\"�Q\u0012�wN�p��m�#_�\u0012K\u0005u�c���o�O��ݵm�N/\u0006�\u000b�i2�D@�}i�=I��|�~L�����j���)����i��0\"�\"9,_`Bٶ�\u0004�\n\u0018WP\t����sk�xI\u00048U���d�}Z�\"'\u0002hN����s������\f<��k�4�/1-��\"R��%�3^j\u0001� Rk��\u001c\u001c��i��0�|\u0005�\u0019�UA U�\u0010�\u0015�f\\0\b1�[�@����\n��[h\r��yײ�L�\u0015��;\\�DB�_^˽$�7�\u0016xY\u0010Xq\u0001��䣂���J\nK\\`�\u0011#\u001f�\u0014ۭ� ,��t���\u0000\u000b�\u0014��G�Oi�울�\u0007��[\u000f)�P��fd�~M���\u0005��Pr���w}�W\u0005�W�\u0019ת\u0015��\u0002w�٣�e�7з���\u001e�Zq�\u0015�D��U~�9x�e�\u000f�j��m$����,����P��~��_�c���u�9I[�w(�DaZhl`�\u000b��u�4��=?B\u0001zxߢ�I\u001f��]7�G(5\u0019��2\u0002H`&q�:Zq\u0014\u0006��@�\u0013����8��ߡ�\u001a�\u001c���O����f��)\"8Z\t^��e�[�}��M�뤥z� Eq\u0012�Nؚ�\u0013.R�$H\u000f�m�a\u0017��\u001d�Љ\\������\u0002�q]���&�DFm\u0006�Vɐ?R\u0006�\"�@��eOodv�\u0006��i:I�����proH\u0002ޒ�#�o\u001a��Q��n�od�!�3ںxgl��3#sjd�Ff`dN��7#c������\u0010���:��3l���\u0010�o�j�h\u0016Gh\u001a>h�A��\u0001\u0018���4\u001d\u0001��LЪ�e�۽bHV��\u001bo\u0017��O �$\u001d�,�\u001e\u0006._�����eW�\u001d��}�yI|/@\u0010D�O�\u0014iY��OU45O�\"����q���\u0003ؓR��\u000b\u0000\u0000��PK\u0007\bS\u0013���\u0003\u0000\u0000\u0012\f\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001a\u0000\u0000\u0000xl/_rels/workbook.xml.rels��Mk�0\u0010����)��\u001f��K���\u0014���\u000f\u0010t4a�\"��u�}�CW�\n\u001e\u0004/\t����@�so4�BO��\u001c�(\u0006��r��m\u000e\u001f���\u0013���\u001bj\u0011��$UG�7�R\u000e2��s�$\u001aA����F7�\u001b\u0011(r�坨��E����q\u0003�I�]�\u001c��N��·\u0018r�v�J\u00121\u0010\u001f�$�\u0006V�:\\2�5����U�\u0006mx �\u0003���\u0018���ҍi�y�nc�~��ߘv��\u001d6�\u001d�4��c�\u001e��-�͚ėў� � \u001f��?�P]&:��\u0015n\u001a���P���<��\t\u0000\u0000��PK\u0007\b�{�\u0001\u0001\u0000\u0000L\u0005\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000xl/worksheets/sheet2.xml̗_o�6\u0010���)\b\u000e��f��-��T��\u000eh� IW`o�t��R�F�V�O?��CYQ:����\u0010Kǻ�Qw<�.y�P1t\u0004���)\u000e\u0016>F�sQP�O�ǻ˟7�e�C�\b�Y�\u0000\u001a=T��\u0014�Z��=O�%TD-D\r��b;!+��BȽ�j\t��F\u0015�B�_{\u0015�\u001cg��]K��L�|/\nH�0\u00058Kj��[�\u001fk����5ُ���z�x\u001d)K\nZ\u00017π$�R�*x�:\f���й��B�Fר��\u0010͵\u0014\u001arm���B�\u0014ͥ�Ձ\u0011u\"�U��\u001d�R��\u0013ވ�B��@\n�'\u000b�\u0014�@�}���;��\u0001���-0�5\u0014'n�\u000e�Q\u000e�_�{�\u0006B\u0001;r`���B0!{��B�bn��0Ң6>.�1\u0013\f�r��[���\u0012��BT�9a����G�\u001f��Tj2��|\u0011\u0007\u001b�n�\u001c�{!>\u001b���&��1L\u0012j�!��.0\"��Gp�q��)Rvi3)\u001b0}����u��K{ڮe\u001f�\u001bѼ\u0005\u0013�\u0014\u0007�b�½Q��%�`��7\u0011a�V����(��\"\u000f)\u000e0�(��J�\u0011è��.S\u001cF\u0018�\u0007�E��\u0015�Ld��\u000b�O|���p�G�\bW���Ǐ\u0012\u000en���w\u0010\u001fo��\u0012�����\u0003dO�\u001b�I�H� i\u0018Y��\u000bs�U�#�t�\u0015Βc�^%���f�'E3؄�Mhm���(�\u0006#���َU���h�F��a\u001dmn�\u0004�\u001c �vs����ds��z�����j\u0000�Z�x\u001c��\u0004��l�j\u0014E�\"��끻���\u0013�z�\r����x��3�i ⳹�����n'�������>�����=�\u001b���3�`B��A��'�A�Stp>�\u0015Y\u0010Π�U�+��vu\u0016D3��\u0014\u001d��v�\u0017,gЫ)zy>��_0S��\u0000���hW��L\r��\u001a\fN�0�6Ux*q�\u0013l\u001e�r�i]v:��=�j�X��r�J(�>�\u0006�]:}���\t���1��%�����M�CW0a����\u0016y�ӑ��\u0016m�f+�F_�ZR��jӕ)T\u00021����#�JnA�-j)$�*�&�\u0002�\u00069�N\u001fAj�?^0\r��s;\u001e�'rO�B�v��\"�ī��v�Z�v�Y�����^h-���Ҷ�\u000e�\u0013B��ѣ�=�)�\u001aդ\u0006yK���8�Q_��Ri�=8T�`��v��:��vhZ12�+i7R��ߕ��� 1\u0012�\u0002פ�Pj!�$TctPpm\u0002\u0004�M�\u0003�\u0014�3�~ŋO%��\u0004�\nIF�G\u000e�]��\u0002n\f��`��ӍO\u0013���)��3��s�\\�Ԝ�`4�\u001d�,i\u0003|iÊ\n�ہ\u0004��+��^|U\u0014�\u001c]�%�(��*{F��Ņ����h��V��\u0007hЍ�\b��\u0006�\u0007F�]�ZAh^%��\u0018^����� {}m�\u001d)��Ϙ%�05g\u0005\u0000\u0000��PK\u0007\b�\u000fVR�\u0004\u0000\u0000h\u000f\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000xl/worksheets/sheet3.xml��K�\u001du����|\n�ƬW�\t\u0011�w\u0003m�~�߯;\u0015D&�\u0012\u0012#�Iu�1\u0005\u0012�\u001c�y�{��e-\u0012)~�p�8��H���������������훯\u001f���ˇ\u000f��|���Wo����i�������뫟߾������{��?x�槯\u001f~������/~����\u001f^����?޽��\u001f^����\u001f^���Oo�����~|w���O���\u0017�_~��\u001f^�z���?־{�W��߽��~w��ÿ�|����o����_�ӏ��~|۾��o����7_}��J�|�ݫ\u001f��|�\u001a\u001e�����\u000f������7\u001f>�W�x�����?���\u000f~~�滷?��޾���������\u001e���۟��~���?]|0y���՛���~����>~��s��uz��w\u0017�߽{��\u0007޽����Ƿ��_��z��/�}�{}�����.n�����Wo���ÿ�}��\u0015����˿�~��\u0019���߾��񿿺���o>|\u0003^?|���\u001f�\u0011ܽ~���x���\u000fg��~����\u0007����\u001f�o_�����͗_������_�÷�|�?����\u0005��\u001f&��߾��\u000f\u001f�p�/?|cￌ\u000f߅\u001f_�����ǧx����_�����|��/��������÷���|�\u000e��o���\u0017ߏ[��Ӌҿ�9���\n����Oϟ<��I�\u000e~�շo_�t��\u001f^��/��7/���������������Û�\u000f~x����?�������\u0007?�����_?|��OO\u001f=|���~z���嗏�3���o߾�?������\u001e��揻ͣ��ytp��z������wy|����a_̓��yrp��z�\u0007}1O?���?w\u0000�}�ͳ�\u0000<�x����\u0001x��./��\u0003������ۼ�ӓ]�_W��\u0015�u�]�x�������^���q��+����?z�߿u�G����)��\u0015���\u001f����|��W��\u001b��7_~\u001a�/��k��6���|Z��?nsn>���\u001f�;7����۞�O�s����ͧ\u0005���6���\n��q;t�i�n��-���F7�\u001e�~ڣ�?n�n?���\u001f�G���\u000b�ۣ�O{t������=�������\u001e��q{t�i�n��=�ݻ��o���g0���ן�����_\u0006�+����⿮��+�z�/~\tS��*|���7_�{��w\u001f>񛯾����p���\r�~���o���7�o����\u001f>��?�r��G~�\u0000%D��o���(�/r����2eL9>^�R�T(5J�Ңt(=ʀ2�L(3ʂ��l(��|���Ͽ\u000e���\u0003|���|��\t����ߝ�<�L!S�\u0014\u001f=ϣ��I��S��)��yF)Q*�\u001a�AiQ:�\u001ee@\u0019Q&�\u0019eAYQ6��H.��ѯ������ߎ��q���۫\t\u000b~9��G��\u0012����'�G��#������/G\u001e��c�\u001f���sf\u0007g�\u001f4��R�T(5J�Ңt(=ʀ2�L(3ʂ��l(��\\���_���/��w$O�\u0016�㙃;\u0005L!S�\u0014�x��?=eʘ��8�(%J�R�4(-J�ң\f(#ʄ2�,(+ʆ�\u001f��\n            <?y���������?\u0010��W�>���/����2�����Q�����W���r��\u0013z���\u0017��g\u001e����/�~������?xī�'��GLO<bv����˫g��\u0019\u000b�\u0012�B�Q\u001a�\u0016�C�Q\u0006�\u0011eB�Q\u0016�\u0015eCُ�b'��ډ�t�?�\u0004O�����?�4U��\b�\u0017_�߿y~5����n��T\u0007C��b蟾��ӫ\u00139>e�R�T(5J�Ңt(=ʀ2�L(3ʂ��l(��\\���_G������Ë�_����ȓ�!�HOe��_��~\t��?É��?Z��x�������Ѩ��\u0015(%J�R�4(-J�ң\f(#ʄ2�,(+ʆ�\u001f�Ũ?�uԟ�E��\u0012��(\u0011J����(\u0019J�R��(\u0015J�Ҡ�(\u001dJ�2��(\u0013ʌ���(\u001b�~$\u0017C��ס}q��z/��0�㙣�e\n�\"����$��)SƔ��yF)Q*�\u001a�AiQ:�\u001ee@\u0019Q&�\u0019eAYQ6��H.����S���*�o/��o^\\����������\u0019���C�����O_^�)�ݝ>o\u0001S���>O������%\u000b���b��\u001a���c�\u0006��ib��\u0016��ic�\u000f�r\u001f~\u0013;_;�\u000e�ә����L߃<���Ѭc��O<`\"\u000f��y���\u0001�ބ��\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f��\u0002|��7����\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H���9��|��ώ\u0006�-\u0010\u000b�\"�X,�h���-\u0013�o8z2�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H������`{�3S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]�������L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�O?�3gJ��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C����i�\u0006�ϟ�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��ic�\u000f�r�?��\u001b\u000e�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9ϟ��\r\u0006�?3\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�������j\u0007�Ο�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��ic�\u000f�r�?��[\f4f\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��y���o��<�ӳ'��Gn�#2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f��?:=�Xu��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H������s|d\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��qrzܹM2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f��?==�.�\u0002��)b��\u0012��)cʙ\n���b��\u001a���c�\u0006��ib��\u0016��ic�\u000f�rܟ�\u001ew.�L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9��O�;�O��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c�\u0017�ǝ�(S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]�?���?�l�\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~szܹ�2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�帟�����2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�帟�����2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�帟�����2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�帟�����2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�帟�����2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�帟�����2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�帟�����2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�帟�����2\u0005L!S�\u00143%L)SƔ3\u0015L%S�T35L-S��3\rL#��43-L+�ƴ\u001f�Ÿ?>]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��q?]U\u001fsUe\n�B��)fJ�R��)g*�J���fj�Z���g\u001a�F��ifZ�V��i?��qr��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H��~��>��\u00140�L\u0011S̔0�L\u0019S�T0�L\u0015S��0�L\u001dS�40�L\u0013�̴0�L\u001b�~H\u0017���tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.��tU}�U�)`\n�\"��)aJ�2���`*�*���aj�:��i`\u001a�&��iaZ�6���.�������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]������*S�\u00142EL1S2eL9S�T2UL5S��2uL=��42ML3�´2mL�!]����U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u001c��U�9WU��)d��b��)eʘr���d��j���e�z��id��f��ieژ�C�\u0018�\u0017���\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t9�\u000b��L\u0001S�\u00141�L\tSʔ1�L\u0005S�T1�L\rS��1�L\u0003��41�L\u000b�ʴ1�t1�7_�Ϊ�Ga��\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013N\u0017����\t�\\�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8\u001dc��&p�\u0015\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�t��?����V,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�ڄ�\t��(n\u0002G\\�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013N�����\t�w�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8\u001d~��&p�\u0015\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�t\u0013�?���UX,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�ڄӹ��(n\u0002\u0007c�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013N�����\tܒ�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M�9ߘo�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�7Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7�\u001bi�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�4f�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�ڄ��F\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m���|#��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1�Hcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘo�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�7Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�r\u0013n�7�[i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�4f�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�ڄ��V\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m���|+��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘo�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o̷Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7�[i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�4f�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�܄G�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�#i�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t��7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7��Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�r\u0013��o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�O�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&<=ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘ�Jcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��Mxv�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1?���\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~l����|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c~.��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6���.7�����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m����B\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]l�헧\u001b��Q�\u0004�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�ڄӍ��(n\u00027f�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013N7����\tܘ�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ݘ��&pc\u0016\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�tc�?����Y,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�ڄӍ��(n\u00027f�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013N7����\tܘ�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ݘ��&pc\u0016\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�tc�?����Y,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�ڄӍ��(n\u00027f�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�r\u0013n�7�\u001bi�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�4f�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�ڄ��F\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m���|#��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6��خ6�|c����\u0016��b�X,���b�X.V��b�X-ֈ�b�X/6��b��,���b��~lW�p�1�Hcf\u000b�B�H,\u0016K�R�L,\u0017+�J�J�\u0016k�Z�N�\u0017\u001b�F�Il\u0016[�V�Ml?��M8ߘo�1�\u0005b�X$\u0016�%b�X&��\u0015b�X%V�5b�X'֋\rb��$6�-b��&�\u001f��&�o�7Ҙ�\u0002�P,\u0012��\u0012�T,\u0013��\n�R�\u0012��\u001a�V�\u0013��\u0006�Ql\u0012��\u0016�Ul\u0013ۏ�j\u0013�7�\u001bi�l�X(\u0016��b�X*���b�X)V��b�X+։�b��(6��b��*����v�\t�\u001b�4f�@,\u0014��b�D,\u0015��r�B�\u0014��j�F�\u0015��z�Al\u0014��f�El\u0015���c�܄���V\u001a3[ \u0016�Eb�X\"��eb�X!V�Ub�X#֊ub�� 6�Mb��\"��mb��]m���|+��-\u0010\u000b�\"�X,\u0011K�2�\\�\u0010+�*�Z�\u0011k�:�^l\u0010\u001b�&�Yl\u0011[�6���~ل/~����}����o���ݫ7�\u001f߿z��\u0007�߽��՛����ÿ�|����\u0007}���՛���\fw�����o߽�_o߼�:�{�����w�\u001e��ݻ����=|��\u0017���7_���w��w}��\u0007������_����\u000f\u000b�������o���͟�|r����{�����}���\u000fG�ዺ{��\u0002y���o~��I>���\u0007\u0019�����\u0007?��������}��ÿ_�}����7_~���_^���}��w��~��\u000f׺�������w����O���<|��ͻ�\u0007����o����4�{����w��޼��e���o߽�����\u000f���]��\u0005�{\u0017�����^���-���/���{������w�~��w/?�j\u001f�������\u001f~�{��\u0013߼}sw�������Ꮿ�~������;��#߾��ՇI����ݿL�|��\u000b\u001c߿�\u000f�{���ܽ�{���V���Ӈ�ﾋ�~���\u001c�����\u0002����?��߃���/�����}|���O\u000f껟\u001f�ox���������/����������W_|�ȇ���(����yp�����\u001f���\u0017��\u001a��ꋟ߾���%���\u000b\u0000\u0000��PK\u0007\b\u0014���\u00185\u0000\u0000��\u0002\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0013\u0000\u0000\u0000xl/theme/theme1.xml�ZOoܸ\u0015��S\u0010�'��\u0019\u001bV\u0016��g�&�5lo�=��8\u0012c�\u0014H���\u0015�c�\u0002E�E/\u0005z�h\u001b`\u0017�%�4i�h�@�BAi,�\u0012��\u001d�כ�}H�'�~�/�#����*f�HE\u0005�p�Q\u001b#�}\u0011P\u001ez�����!FJ\u0003\u000f�\tN<� \n���>���\u0004]Ō�=�p�u��j)?\"1�G\"!�*f3!c�ꑐa+�pIy\u0018�V���i�@9F\u001cb��Og3꓇\u0007Dѐ�'\u000f\u0010�Vp�HL�VF�J}&O�Tu\u0011�����s��>��\u001a3�.�y���@\\��+�\u0011\u0003��Lz����V�ѲH�a��U�\u0005�I�g�\u0015\bR\u000b�6�\f�9_g��}|P��kY�\u0000?<<\u001c\u001fv�ڋp�}��\u000e\u0015)��agT��\u0004�i\u001a,\u0019�\u0007����jM��fw4\u001a\rv]4�\nM��f���?��h�\u0015�AClFO��\u001d\u0017͠B�SO3y���w��\u0014h\"F�y=���r�Y�}؛\t���e�n����QF�o��Ȭ�z�N�ᕐ\u0013������\u001c�EBf�\u0013\u000f�!�J\n7\u0016��\b\u0014�������1\u000b)_�D{��\tp\\X���߿�\n�����߽�ۻ/�x���M\fπ�E�o��������?_���/�\u0002�����\u0017����W t\u0011��o����7�����ӗM��\u0012�E�\u0019��B��Kt\"b��*�Tn\b=��ZP�D\\N��8ԑ��d\u0001�\u00110\"v�_JʃF���W�?���kڄx\u001e�\u0016�H\b6\u0012����ƌ��s\u001e��K΋�\u0013��F�ƥ�9�'\u0011�+���D�r�\u0001�\u0010\u0012N42��9!M��)��sD})��i�9E#�́<�S�F?�10X4�~\u0016�\u0015ѣ�h$X��\u0003raC���\u001a�\u0010fe�c�k�����\u0015!/@G���.�o%Ni\t<$L�À(�\b�T.,��\u0003�+*�-b\u001b\"5=o��\u0000!��\u0003q>� N���<*�~�΅`���n�O�{�<\u000bF�������\r��g4���h��e�^%��!\u000b6\u0003RPg�ae��iG�\u001a��*��u��:W4\u001b'�J���\\;�9?&<j�܏�j9܏����o{cmeG��af\u000f��\u0002x}�[�`o\u0016����(c�z��\u000be�@%\u0018\r&��\u001bi&O��h\u0012���Mˉ݇�PB*DR�Q\u001d�F�\u0010\u000fwpIC�,[r)J��p\u001bۯ�*�KWj�u�h`@��@\u001f� [�k�\u0017��^�-��2�ֺ�3���F��]���\u0018��Gg��\u001f5y�N~d�R���\u001f�\bx���N7�\u000e)\u001f\u0018\tL�������5ީIzF\u0018A@�YW�~�����b\u00155n�\r���jk�����;z���Ά�8����;�ȇ��3\u0006\u001a#?N\u0002\u000f+3\u001a���þ��ju΂�sd�~׽�˅�v-�\r{��Ii\u0013��\u0001�(#NW��˸#T�Aߤ�vcպm/z�·�E��p2�\u0011_;���:{�j�b��<��K4esy\u0002����v\f��\u001e�^?H\u000f\u000f�˝j7xw\u0003+�w��t!�$�e�\u0019������#r��Yp�|#.��b��\u001ecW�Y�cw��[�\u000e�I/�\u0004�H@�9xXH\u001d�PB\u0012Q\"\u0005�.\u0017�Ј�6\u0001@L��I.J�\u0013-���+j\u0019\r#}BC$i�a\u001dIB��2��Mk��<P�\rl��\u001c#G,L�\u0012Gx�䂰3��wL�0���S��Z���-���:\r'?�+a��<\u0015Z.��y\b�7]�\n\u0007�ݻ�v\u001bg��#�5��\u001d44�u\u001dٯ9�'�#d��O��\b��o��g��\u001a�W\u0015�=�p�l��p��ΰ��mT�[�C��:������(�Z���Zk�p�\u0016jm�(5��^�Ҍ�5/�<��hDFP�i�9\u0001M_\u0011_\u001f�\u0019�Y��b*9 �\\�y>����T\u0004\u000b[�T6ˊ2U9�1~Bf�\u0006W��P���o�����\u001b��@笽�X�\u001c\u0016o6�s��f�9�m��7���\u0015��as�Q,�B���H��4����\rc�\"���X���5����\rr�g�<Tw���JK\u0018_���ҭ'\u000f����\u0001\u0000\u0000��PK\u0007\b�h��\u0006\u0000\u0000�*\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000docProps/app.xml��AK\u00031\u0010\u0005����0�nV\u000f\"%�E\u0010�x\u0010\\�א̶�d&dƲ��R\u0004�Ǚ\u0007\u001f��Z�9a��4�]?�A\n\u001c\u0013\u001dF��_6�`D=E��p�3\n�ν7��4���d�\u0011��uk��#\u0016/=W���[�*=���eI\u0001�9|\u0017$����`qU��qS�@�\u0015�'�\u0015�\u001c.��k>W\u0014�:c����\nN����\u0012=՚S𚘦W6���������׽�O\u0000\u0000\u0000��PK\u0007\bf��q�\u0000\u0000\u00004\u0001\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0011\u0000\u0000\u0000docProps/core.xmll��J�0\u0010��OQr�L��Hi�7O\n�\n^C2v��3dF�}{٢Up���\u0017��\u000fK��'V\u000e%\u000f��F5�]�!O�zy��ݪ��foc�8�\u0013�:�W��Ε���\u0010V\t�͒b��Ѡ�\"�\u0001�;b��\u000ba^R|+5Ya]�\u0004dݻ�\u0010���@B�ފ�spG[Q}'�ے�Q�\u001a�\u000e0b�,\f�n�צ '/~��`M|\u0011��M.\u001c65ϳ��W�7��ׇ�������S9Tc\u000f�\u0006\u001a�\u0002\u0000\u0000��PK\u0007\b;�|\u001a�\u0000\u0000\u0000l\u0001\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0013\u0000\u0000\u0000[Content_Types].xml̕M��0\u0010���\u0015F�b)���\u0014�{�Ǳ]hz.�4�E$��&���4!\u0014�\t!\u0017��y�G3ਫ਼\u0006g�\r�d���/X\u0001^�6�������\u001d{j^T�m�T\f��T��(�\u0017\"�\u001e�L\u001c\u0003���\u0016���8�N\u0004�V�\u0003�X�\u0015\n=���r\u0006k��\u001b��h(�e�/�A�ď\b6\t�OV|�\u0015df�d\b�(I\u0006��x}B+��\\9~�z\u0013���Y�T�@:�Ԩ�#�$d\b<W�\u0002c�\u001a\u0005\u001a�ځ'\u000e\u0003�נ�\u00101@$\u0003s-\u0014F��qx���\u001e��0�~\"�2��C\u0018�H����Q4�K�;p2�\u0014\"H�z\u0000r�\u001feO7��������\u001d�\u001e�5-�͝4~�\t��`w>\\l3�LF�&��I�����n���o�ǻ3zuwF������>B+ז�OyA���{�YԿ�y\u001a �5��\u000e\u0000\u0000��PK\u0007\b�\u0000C5u\u0001\u0000\u0000\u0015\b\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u000f\u0000\u0000\u0000xl/workbook.xml��Oo�<\f���\u0010xzwXl�i�\u0016��m��\u0000�S,Yګ\"ѱVI4$�I��\u0007;��\u0000ݐ�MR���C�7[��3�d)H(F9\b\f��\r+\t?�\u001f�^�M�_����$z\u0012[�B��0��Y�t�^�\u0011�\u0018���\u0014��4���R\u001bQ�� �w�8�/2�l�\u001d�:� ��\u001aoI�=\u0006�A\":ŖBjl��*k�p��_����<J�D����\u0011�2\u001bԫ?2�H\rm�-��$A9\u0007�(��*�H��K�5\u001f�\u000f{�Qs��^Kv���&\u001dz�����E����H�I�F�k\u000b�l�k�Y��\\-�>�j��sA�8����`hs�vհ���j��=XÍ����r\u0002b��'%� ^\u000e�\u0003\u001dݠU�\r$�\u001b�E�흭�W�\u001b\u000e��FB\u0001\"^[#!NM\u0001\"�b��l�]�����1�r*h\u0014w61\u001d��\u0003��DڜZ1�*$կ!\rpg\u0003�ى�w��\r7\u0019�&'�A�G�?9�f�:\u001f������[0Xۀ�{�*��P+��Q1~�u`\tE���X!��*`_�E�JB>��j�=x\u000b��\u0000\u0000\u0000��PK\u0007\b�\f���\u0001\u0000\u0000\u001d\u0004\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u000b\u0000\u0000\u0000_rels/.rels���J�0\u0010\u0006��>E��6�\u0015D��^D؛H}��L��$\u0013&Q��\u000b�������7�t�\u001a�xEΎ��]ӂ�hȺ8)x\u001a�7p�7�#z]\u001c�<��E\r>f\u0005s)�V�lf\f:7�0��G�Kn�'��Y�r߶גv@�\u0011�V\u001c�\u0002>�\u001d��=�z\u001aGg���K�X���+\u0001b�<aQP�|#^����\u0006\u000f�,g��s~[\u0019�h����\u0018��)!\u0017��[d�<0����`�Zo�|\"�\u0005�E��J�����7�\u001f\u0001\u0000\u0000��PK\u0007\b�Ξ��\u0000\u0000\u0000D\u0002\u0000\u0000PK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000^����\u0003\u0000\u0000�\u000b\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000xl/worksheets/sheet5.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000��1�\u001d\u0004\u0000\u0000�9\u0000\u0000\r\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�\u0003\u0000\u0000xl/styles.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000J�Zr :\u0000\u0000��\u0002\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000L\b\u0000\u0000xl/worksheets/sheet1.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0018�\u000bP�2\u0000\u0000Ϝ\u0002\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�B\u0000\u0000xl/worksheets/sheet4.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000S\u0013���\u0003\u0000\u0000\u0012\f\u0000\u0000\u0014\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�u\u0000\u0000xl/sharedStrings.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�{�\u0001\u0001\u0000\u0000L\u0005\u0000\u0000\u001a\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�y\u0000\u0000xl/_rels/workbook.xml.relsPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�\u000fVR�\u0004\u0000\u0000h\u000f\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�z\u0000\u0000xl/worksheets/sheet2.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0014���\u00185\u0000\u0000��\u0002\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�\u0000\u0000xl/worksheets/sheet3.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�h��\u0006\u0000\u0000�*\u0000\u0000\u0013\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00006�\u0000\u0000xl/theme/theme1.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000f��q�\u0000\u0000\u00004\u0001\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000>�\u0000\u0000docProps/app.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000;�|\u001a�\u0000\u0000\u0000l\u0001\u0000\u0000\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000A�\u0000\u0000docProps/core.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�\u0000C5u\u0001\u0000\u0000\u0015\b\u0000\u0000\u0013\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000X�\u0000\u0000[Content_Types].xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�\f���\u0001\u0000\u0000\u001d\u0004\u0000\u0000\u000f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u000e�\u0000\u0000xl/workbook.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�Ξ��\u0000\u0000\u0000D\u0002\u0000\u0000\u000b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000.�\u0000\u0000_rels/.relsPK\u0005\u0006\u0000\u0000\u0000\u0000\u000e\u0000\u000e\u0000�\u0003\u0000\u0000M�\u0000\u0000\u0000\u0000"},{"id":"3d09823a-85d7-4751-b0a9-bcf68dbea884","name":"/composite_statement","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/composite_statement"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Expires","value":"Fri, 06 Sep 2024 08:41:23 GMT"},{"key":"Date","value":"Fri, 06 Sep 2024 08:41:23 GMT"},{"key":"Cache-Control","value":"private, max-age=0"},{"key":"Last-Modified","value":"Fri, 06 Sep 2024 08:41:22 GMT"},{"key":"ETag","value":"\"48a9d932bc2091d69a6f3f723442af03\""},{"key":"x-goog-generation","value":"1725612082869364"},{"key":"x-goog-metageneration","value":"1"},{"key":"x-goog-stored-content-encoding","value":"identity"},{"key":"x-goog-stored-content-length","value":"69311"},{"key":"Content-Type","value":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"},{"key":"Content-Disposition","value":"attachment; filename=\"composite_statement_1725612082.xlsx\""},{"key":"x-goog-hash","value":"crc32c=PjfUOA=="},{"key":"x-goog-hash","value":"md5=SKnZMrwgkdaabz9yNEKvAw=="},{"key":"x-goog-expiration","value":"Sat, 07 Sep 2024 08:41:22 GMT"},{"key":"x-goog-storage-class","value":"STANDARD"},{"key":"Accept-Ranges","value":"bytes"},{"key":"Content-Length","value":"69311"},{"key":"X-GUploader-UploadID","value":"AD-8ljtQPyDiuStS5X6MKQ76hPUS5RJhRZZl6o9Ki5CBTQhlrI_F77lYa19Xv0ZZYlTjQzGRzDY"},{"key":"Server","value":"UploadServer"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000xl/worksheets/sheet1.xml��[s\u001cW���{�\n\u0006\u001c��,�U@᰷�\u001d�<�W�ʣ��\"$1�$h\u0010�f��;���\\X߫�n����\\���,dA�W�B�\u0005���\u001f\u001f�?�ry����ǗG��/��]~��������<\u001a��������鏫������ͳ������G���|��?�����.?���������������\u000fon>?�����ϟ�/߼�}�\u000f�ܿxq��7�>\u001e����m���/���\\^WWo/_\u001e�����ˣW?}z�륽�\u0019>��Me����|�~���J�~z����ǯ�\u000eϮ/yy�o�����\u000f_��O������\u001f�\u001f��g�����\u000fs}us����g��ƞ}����������|^�1�~��|����ˣ������]�\u0011\\�O/߼��^��yy}��\u001b�����MU^�r��%o���^���������k~�y�����\u000f��z��\u0005�^�����7_?�������ۿ������ǯ���G�n�>}����������g?=��}ytzr�쿮�>؟߼�|y�{���?׷����W�|�W��~���� �qu��_����/�~]o�-�~\u0011>��x�����8z���w_.�}4����]�}���l_�b^��\u000b��6\u001e���/_|�6s��I��H/�~�_\u001e��������~���������\u0019y���篟����o�޾�������?^\u001e\u001d��}x���q�����~Ǝ������o/�vg�O������盫\u000f���n�\u0018�~�������?n���fN}7��n7sv3g��9}~v�>7s~3羛9~~�}n���f.\n<7�?�n7�{2�\u0017�����?s�?/�����w�z�?��}ſ���\u0015���?q���x���\u0015�����W<�nW<����w���#��w���\u0007\u001b��\u0015�>��W���!Ŀzŧ�\u0016��+�^\n    <L��������|͇;����sv\u000fw������\u001e�<��w����\u0000���v\u000fw����\u0007�\u001e�B��w\u001f�=܉v��^�{�\u001b����h�p?������~��~�����\u0003���G������ݏ�\u000f�����\u001f�\u001f�G��w?��{�o���7���\u001e�������_���������W�����^�ǻ�s[z�77o^�t}�ǳ��w�mA�G�+�\u0010��������z\u000b��4ܼ<�|��/�^��㗯W�?��=�\u0004R�;9y*��XJ\"%��Iɥ\u0014RJ)��ZJ#�Hi�tR��^� e�ɏ�W�������o�tx����9�ķ�I\t�DR�ܜ�TJ&%�RH)�TRj)�\u0014#���I�Rz)���'��\u001do�ܱs�/�����N<���x}\"p��m{R\")��DJ*%��K)��R*)��F���J�X)��A����N�n����N��==qp����=)��XJ\"%��Iɥ\u0014RJ)��ZJ#�Hi�tR��^� e��j{���;\n        <Y֩���'Μ��'�mOJ$%��HI�dRr)��RJ%���H1RZ)�\u0014+��2H\u0019}������>Yֹ���'.���'�mOJ$%��HI�dRr)��RJ%���H1RZ)�\u0014+��2H\u0019}�����흩�x-%�\u0012J���R\u0012)��LJ.��RJ���R\u001a)FJ+��b��R\u0006)�OV[;ߺ���+��y�/�v�(�rtRB)��XJ\"%��Iɥ\u0014RJ)��ZJ#�Hi�tR��^� e��jt\u0017[Gw�n㵔@J(%�\u0012KI��R2)��BJ)��RKi�\u0018)��N���K\u0019��>Ymm�b��n_J�\n            <e�>g��̷�i\n5E��{�mOS�)Ӕk*4��*M��F���j�4YM��AӨi�4kZ��\u001e��\u0004�>�����}rp����ܧ\u0007�\\���!�@\u0011�$\u0002M\u0004�\bT\u0011�\"�E �@\u0019�4\u0002m\u0004�\b�\u0011�#�G �@!�4i�5-^Z�|stٹϥy�s���?sv\u001f8>99v�\t��g<+�O�G�bM��TS�)�Th*5U�jM�&����i��zM��QӤiִxi��͙g����\u000e��=gNݕ�֣)�\u0014kJ4��2M��BS���Tkj4\u0019M��N���k\u001a4��&M���K�o\u000eJ���hw��s��]��J�\"M��DS�)Ӕk*4��*M��F���j�4YM��AӨi�4kZ��^��t�{Z�v\u0017���Μ=:���=�h�:`i�5%�RM��\\S���Ti�55���VS��j�5\r�FM��Y����7G���!�5\u0005�BM��XS�)Քi�5\u0015�JM��ZS��hj5u���^Ӡi�4i�5-^Zozs|�ݵ��Ed���B��4��\"M��DS�)Ӕk*4��*M��F���j�4YM��AӨi�4kZ��\u001e��ڷ�u給@S�)�\u0014kJ4��2M��BS���Tkj4\u0019M��N���k\u001a4��&M���K�Mo����V����<\u0005�y4nI��HS��mQS�)Ӕk*4��*M��F���j�4YM��AӨi�4kZ���i���r׊�\u001f�������3\u0017��8ώ\u0007�3�s��^&�HS�)єj�4�\nM��JS���d4��:MVS�i�4j�4͚\u0016/��9g�����㝺/����\u0014<����\"M��DS�)Ӕk*4��*M��F���j�4YM��AӨi�4kZ����掹�!��=���U�aպ[j�5%�RM��\\S���Ti�55���VS��j�5\r�FM��Y����7w��]\u001dZ���&��C�}\u001fþu��\u0014kJ4��2M��BS���Tkj4\u0019M��N���k\u001a4��&M���K�}o.���5r��0�����\u0017Y�ݟ\u0007y8tr߃�����T�'7�h�]jJ4��2M��BS���Tkj4\u0019M��N���k\u001a4��&M���K�on����������3��\u001f�ܽ\u001f\u001e��d����;w\u001d15Ś\u0012M��LS���Tj�4՚\u001aMFS���d5��\u0006M��IӬi��z�#�ލG_^\u001d��\u001fޟY��}\r�á�?��_�>?���ׅSS�)єj�4�\nM��JS���d4��:MVS�i�4j�4͚\u0016/�\u0007��p�ݠ��ձ�j��31��ǃ?{�bw��}�m���\u001e\r^WOM��TS�)�Th*5U�jM�&����i��zM��QӤiִxi=���s�֦/���\u0017�ޟ����?\u001e�\u000f��c�#x�D5Ś\u0012M��LS���Tj�4՚\u001aMFS���d5��\u0006M��IӬi��z���-P_^\u001d?y\u0016��3x��g<\u001cz\u0018��������E�bM��TS�)�Th*5U�jM�&����i��zM��QӤiִxi���6W�c7A}yu�>Cs���p�~�\u0017���߲>��o{�\u0014kJ4��2M��BS���Tkj4\u0019M��N���k\u001a4��&M���K�oΤ�2W��\u0014h\n5E�bM��TS�)�Th*5U�jM�&����i��zM��QӤiִxi���m���H=~\u0019ױ�\u0013\u0013O�<\u001a��PStO;�븎u#Քj�4�\nM��JS���d4��:MVS�i�4j�4͚\u0016/�׽��\u001e��(|\u001d��\u0019|\u001d����\u000b�\u0001����|�;�|#\u001b\u001f눪)Քi�5\u0015�JM��ZS��hj5u���^Ӡi�4i�5-^Z�\u00016G�cٮ^k\n4��\"M��DS�)Ӕk*4��*M��F���j�4YM��AӨi�4kZ�����Pz|�7\u001f�����;�\u000fy~�3\u0000\u000b�\"��X�QM��LS���Tj�4՚\u001aMFS���d5��\u0006M��IӬi��z����}�|������\u0016_\u001c}���:��x�e�?��/����\u0007-�3�#�\u000e��RM��\\S���Ti�55���VS��j�5\r�FM��Y����7���������'n)}8t��;��ֿr���\u0019��u5Քj�4�\nM��JS���d4��:MVS�i�4j�4͚\u0016/�׿��\u001e�V�ZS�)�\u0014i�5%�RM��\\S���Ti�55���VS��j�5\r�FM��Y����7������z����\u0011��\u0010,\u0002��u\nՔj�4�\nM��JS���d4��:MVS�i�4j�4͚\u0016/�\u0016~�9���\u0017��#v��.'�\u0016�z�d�B�G,k�aw��}�\u0013����DWQM��LS���Tj�4՚\u001aMFS���d5��\u0006M��IӬi��z�����]���\u000f�.p�w��\u001fj?��J����#񉎧�RM��\\S���Ti�55���VS��j�5\r�FM��Y����7��\u0013Y�^k\n4��\"M��DS�)Ӕk*4��*M��F���j�4YM��AӨi�4kZ�����dzrW�֏՟�q~��X\u001d,\u0004���\u0013�D5��2M��BS���Tkj4\u0019M��N���k\u001a4��&M���K�on�'w-j�X�}���!|a�á���\u0007��\u0005��_��V���\u0013\u001dM5��2M��BS���Tkj4\u0019M��N���k\u001a4��&M���K��o��'\u0007����\u0016�p�G�Q�k��}�L�\u0017\u001e�莪)Քi�5\u0015�JM��ZS��hj5u���^Ӡi�4i�5-^Z�~sG=�uT��\u0002'���d��8�u!=\u001c_�����\u0013�N��RM��\\S���Ti�55���VS��j�5\r�FM��Y����7'ԓ3��ݗ�>\u001c����W���\u000b�睢�<\u0011��z�)Քi�5\u0015�JM��ZS��hj5u���^Ӡi�4i�5-^Z\u000fs==9:��[�\u001e\u000e���q�+����}mA��'�\u0013�X5��2M��BS���Tkj4\u0019M��N���k\u001a4��&M���K��oN�'\u0017�ỿ@��\u0010\u000f�\u0002���\u001fvg�O\u001e��Չ�D�WM��LS���Tj�4՚\u001aMFS���d5��\u0006M��IӬi��j�����p�;1?=\u001c����\u001f��GO��Y�\u000f�\u0017;�y��9��8u�����۫�TS�)�Th*5U�jM�&����i��zM��QӤiִxi=���� ;�kM��PS�)֔hJ5e�rM��RS����h2�ZM�&���4h\u001a5M�fM��֛�\u001cU\u000fw1k\u001d�ܗ�<\u001c�\u0005(�\u0010,\u0002�\u000f:�jJ5e�rM��RS����h2�ZM�&���4h\u001a5M�fM���\u000bߜX\u000f��\u0013_,�p\b\u001f�?\u001c������\u0017�/�X���pvp\u001f��/�?=yr���\u0003��TS�)�Th*5U�jM�&����i��zM��QӤiִxi���\u0001�p\u001f>�!��!~�~w��\u0007<��_���}\u0011��u�Քj�4�\nM��JS���d4��:MVS�i�4j�4͚\u0016/�����\u001ed�z�)�\u0014j�4Ś\u0012M��LS���Tj�4՚\u001aMFS���d5��\u0006M��IӬi��zӛS��>p�\u001e�������Q��\u0010,\u0002�\u000f��jJ5e�rM��RS����h2�ZM�&���4h\u001a5M�fM���\u000b��T\u000f��zx��-M��j�����w�\u001d��F���A7UM��LS���Tj�4՚\u001aMFS���d5��\u0006M��IӬi��z������T��Fp��T\u000f������=E���=>袪)Քi�5\u0015�JM��ZS��hj5u���^Ӡi�4i�5-^Z�~sQ=�wL�.��\u0010�zw��\u001b���é��Չ'�����\u000f��jJ5e�rM��RS����h2�ZM�&���4h\u001a5M�fM��V�?�\\TOe�z�)�\u0014j�4Ś\u0012M��LS���Tj�4՚\u001aMFS���d5��\u0006M��IӬi��zӛC��]�Z{�����!߷�`!X\u0004\u0016��l�)Քi�5\u0015�JM��ZS��hj5u���^Ӡi�4i�5-^Z/|s6=����;�\u001e\u000e��\f{8t�0{��&������{C���ً�\u0007�\u0007�OuQՔj�4�\nM��JS���d4��:MVS�i�4j�4͚\u0016/�ǿ����'L|��p\be�����ڞ�\\�u�;~�S5��2M��BS���Tkj4\u0019M��N���k\u001a4��&M���K��oΩ��Z��\u0014h\n5E�bM��TS�)�Th*5U�jM�&����i��zM��QӤiִxi��͉��.M�\u001e�?��\u001f\u000ey\u001f�k\u000b�\"��T\u0007SM��LS���Tj�4՚\u001aMFS���d5��\u0006M��IӬi��zᛃ��}��\u0017�=\u001c¿������#\u001a�I���O.��{ǧ��jJ5e�rM��RS����h2�ZM�&���4h\u001a5M�fM��֣��PO��%?N�?t���;t�\u0018�3��?\u0019=�w|����TS�)�Th*5U�jM�&����i��zM��QӤiִxi=����T��ך\u0002M��HS�)єj�4�\nM��JS���d4��:MVS�i�4j�4͚\u0016/�7�9���\u0014�ZS�)�\u0014i�5%�RM��\\S���Ti�55���VS��j�5\r�FM��Y��զ�6wϳ�޴��y�/�\u000e�C��\u000bOS�)�\u0014��\u0002�)Քi�5\u0015�JM��ZS��hj5u���^Ӡi�4i�5-^Z�{s\u0001=�kM�\u0017q��n��8�4xr���%E��3]A5��2M��BS���Tkj4\u0019M��N���k\u001a4��&M���K�o��gwQ�����rw憧/�\u000e���e�\n5E�bM��TS�)�Th*5U�jM�&����i��zM��QӤiִxi��͹�L��ך\u0002M��HS�)єj�4�\nM��JS���d4��:MVS�i�4j�4͚\u0016/�7��b��գ�\u0011����uO�<\u001a��PS�)>�9SS�)Ӕk*4��*M��F���j�4YM��AӨi�4kZ��\u001e��yv\u0017���G�>u-����wdx\u000f9?�\u0014>=�h���3\u001d85��2M��BS���Tkj4\u0019M��N���k\u001a4��&M���K��o\u000e�gn7����}=���w��θ?/��̣�K�5%�RM��\\S���Ti�55���VS��j�5\r�FM��Y����7��3�\u0018}yu���w���=g�ܹ�p\u0015i�5%�RM��\\S���Ti�55���VS��j�5\r�FM��Y����7G�37&}yu�>�w���=g�����̣��ީ)єj�4�\nM��JS���d4��:MVS�i�4j�4͚\u0016/�羹w����˫�'�ߟ�y:w�uܗ�\n                <9�h�:�jJ4��2M��BS���Tkj4\u0019M��N���k\u001a4��&M���K���oN���)���\u000e���uq��)��=g��߫��̷�k�5%�RM��\\S���Ti�55���VS��j�5\r�FM��Y����7��s7A}yu�ϙ�s�\\��^�əGs�\u0014kJ4��2M��BS���Tkj4\u0019M��N���k\u001a4��&M���K�o���O\u000b�������r\u001b΄O�<��Υ�\u0012M��LS���Tj�4՚\u001aMFS���d5��\u0006M��IӬi��z�s�Υ�\u0002M��HS�)єj�4�\nM��JS���d4��:MVS�i�4j�4͚\u0016/�7�9��?ͥg��/O�<\u001a�Υ�\"M�Υ�RM��\\S���Ti�55���VS��j�5\r�FM��Y����7��s7C}yu�\u0016�s�����D��PS�)֔hJ5e�rM��RS����h2�ZM�&���4h\u001a5M�fM���+�\u001cH�e�z�)�\u0014j�4Ś\u0012M��LS���Tj�4՚\u001aMFS���d5��\u0006M��IӬi��zӛ+蹬O�5\u0005�BM��XS�)Քi�5\u0015�JM��ZS��hj5u���^Ӡi�4i�5-^Zozs�<��鵦@S�)�\u0014kJ4��2M��BS���Tkj4\u0019M��N���k\u001a4��&M���K�Mo��#��\u0014h\n5E�bM��TS�)�Th*5U�jM�&����i��zM��QӤiִxi�����B��ך\u0002M��HS�)єj�4�\nM��JS���d4��:MVS�i�4j�4͚\u0016/�7�9L^� �ZS�)�\u0014i�5%�RM��\\S���Ti�55���VS��j�5\r�FM��Y����7��\u000bY}^k\n4��\"M��DS�)Ӕk*4��*M��F���j�4YM��AӨi�4kZ������x�\u0013��@S�)�\u0014kJ4��2M��BS���Tkj4\u0019M��N���k\u001a4��&M���K�MoN�\u00172���\u0014h\n5E�bM��TS�)�Th*5U�jM�&����i��zM��QӤiִxi���e�B��ך\u0002M��HS�)єj�4�\nM��JS���d4��:MVS�i�4j�4͚\u0016/�7��#^莨)�\u0014j�4Ś\u0012M��LS���Tj�4՚\u001aMFS���d5��\u0006M��IӬi��zӛ;�\u0002M��HS�)єj�4�\nM��JS���d4��:MVS�i�4j�4͚\u0016/�7��#^莨)�\u0014j�4Ś\u0012M��LS���Tj�4՚\u001aMFS���d5��\u0006M��IӬi��zӛ;�\u0002M��HS�)єj�4�\nM��JS���d4��:MVS�i�4j�4͚\u0016/�6�{�9$�\u001e\u0015�\u0006\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l��͉���\\���`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y���x{T�]�G�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a0\u0003ւu`\u0016�\u0007\u001b�F�\tl\u0006[��}s��=*׮�$X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־9X�\u001e�k��\u0012,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9kߜ2o�ʵ�\t\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�o���G��u�\u0004\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u00013`-X\u0007f�z�\u0001l\u0004��f��o��7��ۣr�:���`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g����Q�v�F�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l�������\\���`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f��m���������-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u00013`-X\u0007f�z�\u0001l\u0004��f��o�ڷ��\u001d�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-u\u0007-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo�;h��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a0\u0003ւu`\u0016�\u0007\u001b�F�\tl\u0006[��}{K�AK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�\u000eZ��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��Rw�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y�������-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u00013`-X\u0007f�z�\u0001l\u0004��f��o�ڷ��\u001d�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~[�}���j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-u\u000f-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo�{h��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a0\u0003ւu`\u0016�\u0007\u001b�F�\tl\u0006[��}{K�CK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�\u001eZ��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��R��R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y�������-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u00013`-X\u0007f�z�\u0001l\u0004��f��o�ڷ��=�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-u\u000f-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`���k?��R���j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0018Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��R���j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0018Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��R���j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0018Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��R���j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0018Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��R���j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0018Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016���~����@K�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�\t�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־���@K�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�\t�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־���@K�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�\t�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־���@K�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�\t�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־���@K�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�\t�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~[�����\u001e��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0000-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo�\u0007h��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a0\u0003ւu`\u0016�\u0007\u001b�F�\tl\u0006[��}{K=@K�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�\u0001Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��R\u000f�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y���z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u00013`-X\u0007f�z�\u0001l\u0004��f��o�ڷ��\u0003�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־��\u001e��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0000-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`���k?��RO��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0014Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��RO��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0014Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��RO��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0014Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��RO��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0014Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��RO��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0014Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016���~����AK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�\u0019�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־���AK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�\u0019�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־���AK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�\u0019�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־���AK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�\u0019�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־���AK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�\u0019�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~[��|{K=���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u00013`-X\u0007f�z�\u0001l\u0004��f��o�ڷ��sh��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a0\u0003ւu`\u0016�\u0007\u001b�F�\tl\u0006[��}{K=���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u00013`-X\u0007f�z�\u0001l\u0004��f��o�ڷ��sh��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a0\u0003ւu`\u0016�\u0007\u001b�F�\tl\u0006[��}{K=���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u00013`-X\u0007f�z�\u0001l\u0004��f��o�ڷ��sh��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a0\u0003ւu`\u0016�\u0007\u001b�F�\tl\u0006[��}{K=���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u00013`-X\u0007f�z�\u0001l\u0004��f��o�ڷ��sh��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a0\u0003ւu`\u0016�\u0007\u001b�F�\tl\u0006[��}{K=���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u00013`-X\u0007f�z�\u0001l\u0004��f��o�ڷ��sh��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a0\u0003ւu`\u0016�\u0007\u001b�F�\tl\u0006[��^����z\u0001-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo�\u0017�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y���z\u0001-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo�\u0017�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y���z\u0001-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo�\u0017�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y���z\u0001-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo�\u0017�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y���z\u0001-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo�\u0017�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f��m�����-���X;X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�on��G��uK\u0005\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u00013`-X\u0007f�z�\u0001l\u0004��f��o��7��ۣr�����`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g�[��Q�v�R�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-���\\�n�`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y��z{T�]�T�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a0\u0003ւu`\u0016�\u0007\u001b�F�\tl\u0006[��}sK�=*׮[*X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־���\u001e�k�-\u0015,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��Ro�ʵ�\n\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�on��G��uK\u0005\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u00013`-X\u0007f�z�\u0001l\u0004��f��o�ﶷ�\u001d�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-u\u0007-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo�;h��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a0\u0003ւu`\u0016�\u0007\u001b�F�\tl\u0006[��}{K�AK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�\u000eZ��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��Rw�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y�������-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u00013`-X\u0007f�z�\u0001l\u0004��f��o�ڷ��\u001d�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l��z���-u\u000f-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo�{h��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a0\u0003ւu`\u0016�\u0007\u001b�F�\tl\u0006[��}{K�CK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�\u001eZ��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��R��R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y�������-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u00013`-X\u0007f�z�\u0001l\u0004��f��o�ڷ��=�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-u\u000f-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo�{h��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a0\u0003ւu`\u0016�\u0007\u001b�F�\tl\u0006[��^����z\f-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo���R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y���z\f-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo���R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y���z\f-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo���R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y���z\f-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo���R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y���z\f-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo���R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f��m����-�\u0004Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��RO��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0004Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��RO��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0004Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��RO��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0004Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��RO��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0004Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��RO��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l��z��-�\u0000-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo�\u0007h��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a0\u0003ւu`\u0016�\u0007\u001b�F�\tl\u0006[��}{K=@K�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�\u0001Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��R\u000f�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y���z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u00013`-X\u0007f�z�\u0001l\u0004��f��o�ڷ��\u0003�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־��\u001e��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\u0000-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo�\u0007h��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a0\u0003ւu`\u0016�\u0007\u001b�F�\tl\u0006[��^����z\n-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo���R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y���z\n-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo���R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y���z\n-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo���R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y���z\n-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo���R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f���Y���z\n-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003f�Z�\u000ê�`\u0003�\b6��`�ߜ�oo���R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`\u0006�\u0005��,X\u000f6��`\u0013�\f��m����-�\fZ��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��RϠ�j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\fZ��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��RϠ�j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\fZ��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��RϠ�j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\fZ��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��RϠ�j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l���-�\fZ��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006̀�`\u001d�\u0005��\u0006�\u0011l\u0002��\u0016�9k��RϠ�j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�\fX\u000bցY�\u001el\u0000\u001b�&�\u0019l��z���[�9�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־���CK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�9�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־���CK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3��7g��[�9�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\r�\u0001k�:0\u000bփ\r`#�\u00046�-~s־���CK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր\u0019�\u0016�\u0003�`=�\u00006�M`3�ⷻ������˛��͛W?}�~���t�����g�]�y��㯟_\u001e�����ˣg�^�{[��x�y��|�K<�����]}�y�>��xsy}����_.�o���\u0014^����[~�ӧ7�^Vo�}������ܼ\n                    <z������������7W�^\u001eힿ8������g����������R���.����ͣ���|���\u000f�^����٧7�.�����|ytq����o�_�<ڽxq��wןơ_/��?���v_�v�_M������\u001f\u001f���\u001d=�z����\u0003y{�����ˏ͗��gW��.?޼��ixy������ͻ��g��4_?A����/o~��K���o~����v�����o}{���g���~�|�>�������w�x���������_��ӻ�G�_�\u001d\u001f�r����էw_��{���~�^�t�\t�o?��޾����ˏ7�7���{xs��m����\u001d\\�}��^��{����\bn�����'��������g�Շ7\u001f������߿����S�������~�v��׻�P���}��<�������W�������~�����\u0013���\u0003\u0000\u0000��PK\u0007\b����&C\u0000\u0000�[\u0003\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000xl/worksheets/sheet4.xml��[�dŝ�{�?�\u0002�{A�)#b\f\u0018�\\�����1Pja\u0003�6�D�~�۪��X����Ǻ����[�pG��3s�7rŗ�������������ի��_}��o�~��O��իi��r{�߿��}��۟��/{���g���\u000f?��ի��{�����\u0017�|��7?~���o����񇿾���o����۟��_���o���7���\u0017�ׯ�����z���\u001f�Z��g���wo~��~��W��_޼��˿�oo�7樂�w����{�/\u001e��/�����_~���o~z��᳟����W���߶����o�]>�;���_\u001e��g�~��wom~��ͷ�>�[�m��~���_�?���\u001f��e�\u0017��������7�|�������\u0017���\u0006oH�|�ݛ�w�������������ލo�7}������Û\u001f�|���w�m�������\f����|���+|�����w��\u0019��?�������7�~���\u0000?����ۿ��#x��\u000f��m������f�}���������\u001f�o����W�\u000e�_?�����n���\u0004�7���\u001f\u001f��}��\u0013�?߾�_����u_�����?����߿���W�>�S���o�}��7������[?�����������e^�������_���\u000f�����/��k�����^\u001d���.�^���\u000b���۷?������7��7���_�߾��7����Ϳ����\u001f��������|�7��_�����>��tz�ٷ�����\u001f���ڇ?�����۷?��ls���ѱ���ɶ9}����_��9���������ivy������\u001f��6����}���?W�s�?W�s�?W��������O\u001a��\u0015�\u001f*��+�??�gW�X����+��X���V�~\\���V�}\\���V�\\���V<�~\u0019�ןn�ߏͧ;7���s�t'��rt\u000e���\u001c^\u000e��ӝ����9|��sx9@�Ow�\u000e/G�������\u0010\u001d>�):�\u001c�ç;GǗst�t���r����\u001c\u001d�\u0006������\u001c\u001d?�9:����;GǗst�����\t�����/P����_����6�\u0015?����+���+�����+~�[&��N�o�}���?�����?��\u001f���������Kr��}�������;|��t{�ٻ�^����/����~���_��EϿ]t����%�\u0012J���R\u0012)��LJ.��RJ���R\u001a)��NJ/e�2J���R\u0016)���%_����߇��;��\u000f+=���b��}��l\\\u0013��\u001cO�K��.�?^r�_\u0012ٗ\u001c�O�k�\u001ct)��LJ.��RJ���R\u001a)��NJ/e�2J���R\u0016)���%�A?�6��8�'c�~}�\u001bS��%��\u001f���j\u001e�뜌\u0019\u000e���8�'�(D\u001f�y��y3OJl��ǈKI�dRr)��RJ%���Hi�tRz)��Q�$e��HY�l.ٍ��k���h\u001eN�W�c�/�\u0017��^�d\\\u0012�\u001d3~5f��8��~;\u0018Sn��ǔKI�dRr)��RJ%���Hi�tRz)��Q�$e��HY�l.�M��k�/�)7����r�kl`/dM��c�/�)�8����1��Jɤ�R\n)��JJ-���J��R\u0006)��I�,e��J�\\�\u001b�'�1�\u0018�'ט\u001b�\u0017�\u000bYc��1�O�c~|�ژqs�?f\\J*%��K)��R*)��FJ+���K\u0019��R&)��E�*es�nƯ^3~�F�v4F��\u001aq�\u0007��^�\u001a�ǈ_\u001fG������)��Jɤ�R\n)��JJ-���J��R\u0006)��I�,e��J�\\���ה�����\\Sn��b�s2nNÛǔ�vS~pL���\u001fS.%��Iɥ\u0014RJ)��ZJ#���I�\fRF)��Y�\"e���d7�w�)��Sn��rwM��㊽�5�w�)�?N���q���\u0011��Jɤ�R\n)��JJ-���J��R\u0006)��I�,e��J�\\�\u001b��k�\u0019����p��/�\u001f�1�ܸ*p�d���kx�_\u0016z�r��������iהj�4�\nM��JS����j�4��\u0006M��IӬiѴjڜ�?\u0000\u0007�\u0003`V�~}?�\u0007��:\u0000��莕���?^�/��,��\u0000�ͯ��F\u000f�\u000f]\u0014�(�QH��F!�B\u001d�<\n}\u0014\u0002)\u0014RH��H!�B%�L\n�\u0014B�,�����%�_\u001f������[��\u0004����?�L�q7���2�N\u000f�k��LS���Tj�4՚\u001aM��NS�i�4j�4͚\u0016M���I���\u000b�\u0007�|\u001e_\u001f��w4��k�\u001f��z𩨇]F��y\u001ack����!US�)�Th*5U�jM��VS���4h\u001a5M�fM��U������Ճ�D���\u001f}\\u�����ȫ�����5����d�p��N\u000f�\u000b��LS���Tj�4՚\u001aM��NS�i�4j�4͚\u0016M���I�����\u0007;�\u001e_���we�'닿��Z��\n���\u001b��|U5�vz\u0018]^5e�rM��RS����hj5u�zM��QӤiִhZ5mNڏ�_�=�\u0011���|k���c��V�X�\u001eW���Wd�r�Y?��&�)Քi�5\u0015�JM��ZS����i�5\r�FM��YӢiմ9i?�~��`\u0007��k����#�\u001e__��w�Zk�]��\u001a�}�=��c��TS�)�Th*5U�jM��VS���4h\u001a5M�fM��U�����\u0005܃]^�����p4���9���k����Z�ϸG��\u001f]q5��2M��BS���Tkj4��:M��AӨi�4kZ4��6'��߯�\u001e�${<�6��\u0011w�\u00073�:���ߕw����ݿ\u001c�[_]x5��2M��BS���Tkj4��:M��AӨi�4kZ4��6'�A�/�\u001e�T{<���訾ǃ��c�R��\u001f]��\u001c����\u0011:�6�c�5��2M��BS���Tkj4��:M��AӨi�4kZ4��6'��߯�\u001e�N{<�/�\u001c]������Xʞ~��{�'�'�M\u0011�������)Ӕk*4��*M��FS����k\u001a4��&M��EӪis�~�����\u000e�ǃ�۱��{x���{4ߣO�=���z˃������)Ӕk*4��*M��FS����k\u001a4��&M��EӪis�~������|\u000f�\u000b?GW�=�/�8���ߧ�\u001e���l�\"zl��0�:�j�4�\nM��JS����j�4��\u0006M��IӬiѴjڜ�\u001f��{tD߃����\u0011}�\u0007�\u001f�R���D��>��̷���N\u000f㯣��LS���Tj�4՚\u001aM��NS�i�4j�4͚\u0016M���I�����GG�=�/�\u001c\u001d��x�~����G��{�Gߣy�\u0011[;=�����2M��BS���Tkj4��:M��AӨi�4kZ4��6'���/�\u001e\u001d��h��㈾G�q\u001e�c){�}��q\u001f}\u000fW뫿���RM��\\S���Ti�55�ZM��^Ӡi�4i�5-�VM�����\u0017}���k>���舾�P\u0006��������}���n����)Քi�5\u0015�JM��ZS����i�5\r�FM��YӢiմ9i?�~��舾G�\u001fG�=\\ͷ�8����'�\u001e���l>j0�vz\u0018\u001d}5e�rM��RS����hj5u�zM��QӤiִhZ5mNڏ�_�=:���z��\u0015}��+?\u001e���\u0013}���{6#tl��0�:�j�4�\nM��JS����j�4��\u0006M��IӬiѴjڜ�X�_�=9���|��䊾G�\u001f�R�\u0013\u0003}��i\u001f}O�\u000fc���\u001f�)Քi�5\u0015�JM��ZS����i�5\r�FM��YӢiմ9i?�~��䨾'󕟓��\u001eO�+?��������}�=Z����a�u�Քi�5\u0015�JM��ZS����i�5\r�FM��YӢiմ9i?�~��䨾'󕟓��\u001eͩ\r\u001cK���S}O��k�F}l��0���j�4�\nM��JS����j�4��\u0006M��IӬiѴjڜ�\u001f��{rT_sh�O��k>n6p,e��O�=���՚~\u001d}5��2M��BS���Tkj4��:M��AӨi�4kZ4��6'���/��\u001c��z���\u0011}\u000fW닿G�=�D��>�^N�/�[;=�����2M��BS���Tkj4��:M��AӨi�4kZ4��6'���/��\u001c��|����\u0011}\u000fW�1⎥������}�=�\u000f,���\u001e�_G_M��\\S���Ti�55�ZM��^Ӡi�4i�5-�VM�����\u0017}O��k>���䊾������=�>���������7k�����WS�)�Th*5U�jM��VS���4h\u001a5M�fM��U�����Eߓ#��/�<�\u001c��x�^��'��{�G����ꯣ��TS�)�Th*5U�jM��VS���4h\u001a5M�fM��U�����Eߓ#���\u0017~\u001c��x�~����'��{�G_뭥�������)Ӕk*4��*M��FS����k\u001a4��&M��EӪis�~�����\u0011}��\u000b?��k}\u001a�c){�}��i\u001f}\u000f�?Ol��0�:�j�4�\nM��JS����j�4��\u0006M��IӬiѴjڜ�\u001b��_�=;�����gW�=��yp,e���'�����j}��n��RM��\\S���Ti�55�ZM��^Ӡi�4i�5-�VM������|ώ�k~�����|\u000f��h�Xʞ~��{�7���l��N\u000f㯛��LS���Tj�4՚\u001aM��NS�i�4j�4͚\u0016M���I���k�gG�=�Ow>����|��c){�}��y�|��/���N\u000f㯛��LS���Tj�4՚\u001aM��NS�i�4j�4͚\u0016M���I���k�gG�5?����j��g[8���ߧ�����d�����a�u�Քi�5\u0015�JM��ZS����i�5\r�FM��YӢiմ9i?�~��숾�\u0007�>�\u001d��h}\u0018�c){�}��y\u001f}�O�{\u001e��\u001e�_G_M��\\S���Ti�55�ZM��^Ӡi�4i�5-�VM�����\u0017}ώ�k~����\u0011}��gG{D߳O�=����e\u0017k�����WS�)�Th*5U�jM��VS���4h\u001a5M�fM��U�����E߳#�^��\n                        <�]���\\#�R���D��>�\u001e̷_��N\u000f㯣��LS���Tj�4՚\u001aM��NS�i�4j�4͚\u0016M���I�����gG��X����k}��c){�}��y\u001f}�Ǩ��F\u000fӯ���LS���Tj�4՚\u001aM��NS�i�4j�4͚\u0016M���I���k�gG�5�*�|v5_�-\u001cK����|���{6�\\\u0011[;=��n��2M��BS���Tkj4��:M��AӨi�4kZ4��6'��߯��\u001d��|v����|���p,e��O�=���zʉ������)Ӕk*4��*M��FS����k\u001a4��&M��EӪis�n�/~���h�O����|��;_�R��_|��e�|O�'���N���TS�)�Th*5U�jM��VS���4h\u001a5M�fM��U�����Eߋ#�>�w�\u0017G��^�\f\u001cK���\u0013}/��k���������)Ӕk*4��*M��FS����k\u001a4��&M��EӪis�~�����\u0011}��;ߋ+�^�;_�R���D��>�\u001e���ͭ�\u001e�_G_M��\\S���Ti�55�ZM��^Ӡi�4i�5-�VM�����\u0017}/��k����⊾�#�\u001cK���\u0013}/��{0\u001f7\u001d[;=�����2M��BS���Tkj4��:M��AӨi�4kZ4��6'���/�^\u001c���\u001d��+�Z�xs,e��O�������_7_M��LS���Tj�4՚\u001aM��NS�i�4j�4͚\u0016M���I���k�\u0017G�5���|q4߃}���|/>���o�'냍��\u001e�_7_M��\\S���Ti�55�ZM��^Ӡi�4i�5-�VM������|/��k�\u0006����|\u000f���G��4�˾����k��0���j�4�\nM��JS����j�4��\u0006M��IӬiѴjڜ�\u001f��{q4_�N���j��w\u0002�R���4�˾�Z�ر������)Ӕk*4��*M��FS����k\u001a4��&M��EӪis�~�����\u0011}��\u000b?��k~�t�X�\u001e��{�G_�C&ck�����WS�)�Th*5U�jM��VS���4h\u001a5M�fM��U�����Eߋ#�ެ\u0017~\\��������=�>�����\u0007�!?�N\u000f㯣��LS���Tj�4՚\u001aM��NS�i�4j�4͚\u0016M���I���O��{3_�yrEߛ�c)k��|���>�\u001e^�_����\u0018M��LS���Tj�4՚\u001aM��NS�i�4j�4͚\u0016M���I�����O��k����䊾�Ǭ\u0007�������O��k�Nelm�0���j�4�\nM��JS����j�4��\u0006M��IӬiѴjڜ��~����h�7�����|\u000f�\u001b#\u0002�R���4ߧ}�=�O\u0013���\u001e�_7_M��\\S���Ti�55�ZM��^Ӡi�4i�5-�VM������|�\u001c���\u0018��'G�=Xoyp,e��O�}�7_�'�vz\u0018�|5e�rM��RS����hj5u�zM��QӤiִhZ5mNڏ�_�}r4ߛ��ϓ����\u001e\t\u001cK����|����z�zl��0�:�j�4�\nM��JS����j�4��\u0006M��IӬiѴjڜ�\u001f���䈾w�'G�=�)6p,e��O�}�G߃y�\u001d[;=�����2M��BS���Tkj4��:M��AӨi�4kZ4��6'���/�>9���z��\u0011}�w�\u001f����\u0013}����`���WS�)Ӕk*4��*M��FS����k\u001a4��&M��EӪis�~����#�ޭ\u0017~\\��|�r�X�\u001e�����������jJ5e�rM��RS����hj5u�zM��QӤiִhZ5mN�O�_�}r4߻�����\u001e\t\u001cK����|����~�G'_M��LS���Tj�4՚\u001aM��NS�i�4j�4͚\u0016M���I���K�O��{�n|\u001d��`�BL�Xʞ~����O��\u000fY�������)Ӕk*4��*M��FS����k\u001a4��&M��EӪis�n��~���贯�\u000f��:�����\u0016�����$��>�ZϚ����\u0018M��LS���Tj�4՚\u001aM��NS�i�4j�4͚\u0016M���I���K�WG�5�a�|u$���9�\u001e���|���{4�cl��0���j�4�\nM��JS����j�4��\u0006M��IӬiѴjڜ�\u001f��{u���gs�\u001d��z�B�Z�\u001a��{�7_��n�N\u000f㯛��LS���Tj�4՚\u001aM��NS�i�4j�4͚\u0016M���I���k�WG�}m�����|O�ͷ<����ߧ�^���`=����a�u�Քi�5\u0015�JM��ZS����i�5\r�FM��YӢiմ9i?�~���\b��ͷ<\\\u001d���ڼ�u-e��O��\u000bű������)Ӕk*4��*M��FS����k\u001a4��&M��EӪis�~������i\u000f֝�#��\u000e֝�G��$��>��\u001f�\u001d[\u001b=L�.��2M��BS���Tkj4��:M��AӨi�4kZ4��6'��߯�^\u001d���Ū竣��\u000e֍�G��\u0014���Z\u001f�\u0017[;=��.��2M��BS���Tkj4��:M��AӨi�4kZ4��6'��߯�^\u001d���I���(���u��Q|�>���/�G�F<�vz\u0018�|5e�rM��RS����hj5u�zM��QӤiִhZ5mNڏ�_�::��@��#��\u000e֍�G��$��>�\u001ȩ���N\u000f㯛��LS���Tj�4՚\u001aM��NS�i�4j�4͚\u0016M���I���k�WG�=X7���{2?d:p-e��O����h�����a�u�Քi�5\u0015�JM��ZS����i�5\r�FM��YӢiմ9i7�7��{s�ڣy�{s5ߣy��Z�\u001c��O�훯�������הj�4�\nM��JS����j�4��\u0006M��IӬiѴjڜ��~��{stڣy�{s%ߣy��Zʚ~��{�'_��cbk�����WS�)�Th*5U�jM��VS���4h\u001a5M�fM��U�����\u0015ߛ#�\u001e�\u001bߛ��\u001e�\u001b_�R���\u0014�۾���0\u0016[\u001b=L�\u000e��2M��BS���Tkj4��:M��AӨi�4kZ4��6'���/��\u001c��h���\u001c��`=�͵�5�>��f\u0004_�W\nbk�����WS�)�Th*5U�jM��VS���4h\u001a5M�fM��U�����\u0005ߛ��\u001e�w��\u001c��`>\u0003.p-e��O���������a�u�Քi�5\u0015�JM��ZS����i�5\r�FM��YӢiմ9i?�~���ȴ��,�7G�=�π\u000b\\KY��S|o��k��������)Ӕk*4��*M��FS����k\u001a4��&M��EӪis�~������i��o��\\��\u001c����5�>���O�\u0007���N\u000f㯓��LS���Tj�4՚\u001aM��NS�i�4j�4͚\u0016M���I���K�7G�=��x�����|ăk)k�}��m�|��s�6z�~]|5e�rM��RS����hj5u�zM��QӤiִhZ5mN�O�_�92�9��7W�5';p-eM�O�틯�k^�F\u000fӯ���LS���Tj�4՚\u001aM��NS�i�4j�4͚\u0016M���I���\u000b�7G�5�'�|s\u0005_�-��k)k�}��m\u001f|�\u0004\u0011[\u001b=L�2M��BS���Tkj4��:M��AӨi�4kZ4��6'�����{�H{2_��;z��z��k)s��>���ｇ������\u001f�)Քi�5\u0015�JM��ZS����i�5\r�FM��YӢiմ9i?�~��'�e��#�\u001e��������'�����`��\"�vz\u0018]|5e�rM��RS����hj5u�zM��QӤiִhZ5mNڏ�_�;2��|���*��\u0007L\u0007�����)��}�5��\u0015[\u001b=L�.��2M��BS���Tkj4��:M��AӨi�4kZ4��6'��߯��]��|���(�����ߣ��}��}_|�W}��\u001e�_\u0007_M��\\S���Ti�55�ZM��^Ӡi�4i�5-�VM�����\u0017|�Jk��sw\u0004���|�ǹ�9�>���\u000f���9���jJ5e�rM��RS����hj5u�zM��QӤiִhZ5mN�O�_ｻ\"������{O�K��s)s�}z�}�{ʹ\u0010[\u001b=L�ν�2M��BS���Tkj4��:M��AӨi�4kZ4��6'���/��]��z�Ǖ{��{ݜK���{�F�~�׵WS�)Ӕk*4��*M��FS����k\u001a4��&M��EӪis�~��j�ݕh��^W�5?b+p.eN�O���k�������a�u�Քi�5\u0015�JM��ZS����i�5\r�FM��YӢiմ9i?�~���H��\u000f��wW��Xw�\u001e���S{���k��:�6z�~]{5e�rM��RS����hj5u�zM��QӤiִhZ5mN�O�_��;\u0012�ź�u�ދu��Q{�>������oxY\u001b=L����2M��BS���Tkj4��:M��AӨi�4kZ4��6'�����/�~�Κ���*�\u0000�7����\u0013�r\u0011\u001f�ߗzy���|\u0013{�?\u000e\u0001X\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n���8\u0017~\u001d��uֹ0�_�2΅yK�\\�>\u0017>-���^^\u00132�7�{=�\u000b]��2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019��/\u0010��:\u0017���U�sa�\u001c\u00138\u0017�υO$�}��W��;\u0006{��s�;1X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6�\\���\u000fי��d�E�\\e�\u000b�6ڹ�}.|���K}<\u0017����\u0018,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005��f\u001c\u000b����:�X���/W\u0019�¼�v.f\u001f\u000b����R/�\u0017w�\\�\f��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3΅_m�p�u.��nWo~�o�=���E��\\\u0018���5\u001b{��s��3X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6�\\�u�\u000f�Y�¾�v��'���#E�\\����>F��7���\u001eυ��`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یs�W�?\\g�\u000b���ը��m�G�~��_��}�6�\u000b\u001c�{=�\u000b\u001d��2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019�¯]��\u001c�}�����[�\u0003�b����׿/���\r�X�\r��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3��_��p�u,��nW�6?E)p.f\u001f\u000b����R/��ֱ�e\u001b,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005�ܶ?\u0016\u0007��}p��u�}p��u��Z�:\u0016\u0007��}��n�AK���ùЖ�e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3΅g�>8��պ�>8b��f}�p-f�\u000b��}��n��\u001e�\u0005�nm\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یc�ٺ\u000f�\n                        <m�\u0015���*�X��.|Z���u\u001fv��pym=\t����d@�֖��`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n���8\u0019���`\u0007��I��/W�O��|<�k1�yK��E��d�k�Ѽ\"�7{<\u0018л�e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3\u000e�g�>؉�`}T��UƷ\f�ٮ�\u001c�2�z�a߻O7� �f�\u0007\u0003���\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��m���\f�\u0007�Q\u001f�O\u0011|�ʸ��\u000f�O�>x\u0005��>x;�\u0005\u0004om)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6�\\x\u0006�ݨ\u000f��f>�\\e�$e\u0005\f�b������a\u001f�\u000f�o���f�\u0007\u0003���\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��m���,�\u0007;R[O�{~�j�\r�z\u0012�k1�7\f��}�\u0017o�s���\u001e�\u0005\u0014om\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یs�Y�\u000fv�>X\u001fI�r��\r�d�\u000b��}�*އ}�>\u001c_n����~�g\u0003���\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��m�����\u0007�T�Ά#{\u001fn�g��\u0016s�\r��}�g������n|о��`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`���g��پ��\\m~T���U���)�b֍�ѫ}\u001f���|�Tl��p.��`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یs�پ�v��[��GW�����^��̸��ݱ0��\u0011���o���8\u0016о��`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یc�پ�v�v\u001c\u000bG�>Y\u000f�w�e>� |�h���`\u001d�]��������\u0014����ɀ��-\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�q2<����Վ��H߮��|���+}\u001f����\r\u0003ʷ�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�q,<��юՎc�\b߮c�\b����\n���:\u0016н��`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یc�ٽ�v�v\u001c\u000bW�v\u001c\u000bG����W�>^�ձ��-\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005��f\u001c\u000b��}tdo�#��_������b��nG�v�v���h�����\\@�֖��`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n���8\u0017������G\u0010�\\�?\u0017�[�\u0002�b��\u0017^����އ��U0��\u001e�\u0006�om\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�ی��Y����m}(��U����u6\u001c��h�\r��}ܕ���s�������ɀ�-\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�q2<��ё�o֯{\u001f]�ۼ\u0019\t���'ë{\u001fw���篭��6{<\u0018\u0010��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn�\u001f����}�|~���8Ɍ�\f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi?�O����`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘�������\f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi?�O�\fy�`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘�����>�\f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi��O��n�`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘�'�i�1�\u0019,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019�~��v�Ǟ�\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1�7�i���\u0019,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019�~��vٱ��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�~���-�\f-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ����j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��mƴ���3�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v��z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���R��R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\u0019Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005��fL�K=CK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�gh��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�\f-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ����j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��m�i����\u000b�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v��z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���R/�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\u0005Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005��fL�K�@K�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�\u0017h��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�\u0002-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ�^��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��mƴ���\u000b�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v��z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6����ɿ�>AK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�O�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\u0013�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v���\u0004-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ�>AK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�O�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\u0013�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v���\u0004-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ�>AK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�O�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+����_�[�\u0015Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005��fL�K�BK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�Wh��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�\n-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ�^��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��mƴ���+�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v��z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���R��R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\u0015Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005��fL�K�BK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`����~�o�7h��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�\u0006-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ�ޠ�j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��mƴ���\u001b�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v��z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���Ro�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\rZ��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005��fL�K�AK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�7h��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�\u0006-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn�O�ݿ�ޡ�j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��mƴ���;�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v��z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���R��R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\u001dZ��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005��fL�K�CK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�wh��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�\u000e-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ�ޡ�j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��mƴ���;�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��m7����-�åb��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�år�uK\u0005\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���R?\\*�]�T�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�år�uK\u0005\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���R?\\*�]�T�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�år�uK\u0005\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���R?\\*�]�T�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�år�uK\u0005\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���R?\\*�]�T�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�år�uK\u0005\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6������R\u000f�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\u0001Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005��fL�K=@K�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�\u0007h��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�\u0000-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ�\u001e��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��mƴ���\u0003�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v��z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���R\u000f�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\u0001Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005�ܶ���K=BK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�Gh��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�\b-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ�\u001e��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��mƴ���#�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v��z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���R��R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\u0011Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005��fL�K=BK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�Gh��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�~�O�-�\u0004-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ����j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��mƴ���\u0013�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v��z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���RO�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\tZ��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005��fL�K=AK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�'h��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�\u0004-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ����j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��m�i?���3�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v��z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���R��R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\u0019Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005��fL�K=CK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�gh��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�\f-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ����j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��mƴ���3�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v��z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6������R/�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\u0005Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005��fL�K�@K�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�\u0017h��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�\u0002-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ�^��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��mƴ���\u000b�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v��z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���R/�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\u0005Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005�ܶ��'���\u0004-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ�>AK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�O�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\u0013�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v���\u0004-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ�>AK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�O�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\u0013�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v���\u0004-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ�>AK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`����~�o�Wh��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�\n-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ�^��j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��mƴ���+�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v��z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���R��R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\u0015Z��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005��fL�K�BK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�Wh��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�\n-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn�O�Ϳ�ޠ�j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��mƴ���\u001b�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��͘v��z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���Ro�R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\rZ��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005��fL�K�AK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�7h��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�\u0006-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ�ޠ�j\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u0006k�Z�\u000e�\u0007\u001b�F�\tl\u0006[�V��mƴ���\u001b�Tm\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\rX\u000bց�`\u0003�\b6��`\u000b�\n��m?�w��z���-\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001a�\u0001k�:�\u001el\u0000\u001b�&�\u0019l\u0001[�6�\u0019���R��R�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�5`-X\u0007փ\r`#�\u00046�-`+��6c��[�\u001dZ��\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j�\u0006�\u0005��z�\u0001l\u0004��f�\u0005l\u0005��fL�K�CK�\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rր�`\u001dX\u000f6��`\u0013�\f���`�یi�o�wh��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\u001a�\u0016�\u0003��\u0006�\u0011l\u0002��\u0016�\u0015ls�1��-�\u000e-U[\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5X\u0003ւu`=�\u00006�M`3�\u0002��mn3�ݿ�ޡ�j\u000b�B�\b,\u0006K�R������Z�H\u000f<\u000e\u0015��\\-���%\t�\r����|>^*��XĖ��I �~�&�3�U\u000f�������R��o���RX\u0006�a\u0005��U�\u001a��ZX\u0007�a\u0003l�M�\u0019��������?��n�\u0001\u0016�BX\u0004;�bX\u0002Ka\u0019,�\u0015�\u0012V�jX\u0003ka\u001d��\r�\u00116�fزngk��R����m\u0007X\u0000\u000ba\u0011�\b�a\t,�e�\u001cV�JX\u0005�a\r��u�\u001e6�F�\u0004�a˺��}K�\u0013Z�\u001d`\u0001,�E�#,�%�\u0014��rX\u0001+a\u0015��5�\u0016��z�\u0000\u001ba\u0013l�-����������\u001e�X;�\u0000\u000b`!,�\u001da1,���\f��\nX\t�`5����\u000e��\u0006�\b�`3lY����n��G7׾�Ra\u0001,�E�#,�%�\u0014��rX\u0001+a\u0015��5�\u0016��z�\u0000\u001ba\u0013l�-�v���-����ڷ[*,���\bv�Ű\u0004��2X\u000e+`%��հ\u0006��:X\u000f\u001b`#l�Ͱe��־���\u001e�\\�vK�\u0005�\u0010\u0016���\u0018��RX\u0006�a\u0005��U�\u001a��ZX\u0007�a\u0003l�M�\u0019�����w��ף�k�n��\u0000\u0016�\"�\u0011\u0016�\u0012X\n�`9����\nV�\u001aX\u000b�`=l���\t6Öu;[���zts��-\u0015\u0016�BX\u0004;�bX\u0002Ka\u0019,�\u0015�\u0012V�jX\u0003ka\u001d��\r�\u00116�fزngk��R_�n�}���\u0002X\b�`GX\fK`),��\u0002V�*X\rk`-����\u00016�&�\f[��l��[���͵o�TX\u0000\u000ba\u0011�\b�a\t,�e�\u001cV�JX\u0005�a\r��u�\u001e6�F�\u0004�a˺��}wK}=����\n\u000b`!,�\u001da1,���\f��\nX\t�`5����\u000e��\u0006�\b�`3lY����n��G7׾�Ra\u0001,�E�#,�%�\u0014��rX\u0001+a\u0015��5�\u0016��z�\u0000\u001ba\u0013l�-��۵_�o�Wh��v�\u0005�\u0010\u0016���\u0018��RX\u0006�a\u0005��U�\u001a��ZX\u0007�a\u0003l�M�\u0019��������+��m;�\u0002X\b�`GX\fK`),��\u0002V�*X\rk`-����\u00016�&�\f[��l��[�\u0015Z�\u001d`\u0001,�E�#,�%�\u0014��rX\u0001+a\u0015��5�\u0016��z�\u0000\u001ba\u0013l�-�v���-�\n-u�\u000e�\u0000\u0016�\"�\u0011\u0016�\u0012X\n�`9����\nV�\u001aX\u000b�`=l���\t6Öu;[���z���m\u0007X\u0000\u000ba\u0011�\b�a\t,�e�\u001cV�JX\u0005�a\r��u�\u001e6�F�\u0004�a˺��}K�BKݶ\u0003,���\bv�Ű\u0004��2X\u000e+`%��հ\u0006��:X\u000f\u001b`#l�Ͱe��־��^��n�\u0001\u0016�BX\u0004;�bX\u0002Ka\u0019,�\u0015�\u0012V�jX\u0003ka\u001d��\r�\u00116�fزngk��R��R��\u0000\u000b`!,�\u001da1,���\f��\nX\t�`5����\u000e��\u0006�\b�`3lY����o�Wh��v�\u0005�\u0010\u0016���\u0018��RX\u0006�a\u0005��U�\u001a��ZX\u0007�a\u0003l�M�\u0019��������+��m;�\u0002X\b�`GX\fK`),��\u0002V�*X\rk`-����\u00016�&�\f[���k���R��R��\u0000\u000b`!,�\u001da1,���\f��\nX\t�`5����\u000e��\u0006�\b�`3lY����o��h��v�\u0005�\u0010\u0016���\u0018��RX\u0006�a\u0005��U�\u001a��ZX\u0007�a\u0003l�M�\u0019��������k��m;�\u0002X\b�`GX\fK`),��\u0002V�*X\rk`-����\u00016�&�\f[��l��[�5Z�\u001d`\u0001,�E�#,�%�\u0014��rX\u0001+a\u0015��5�\u0016��z�\u0000\u001ba\u0013l�-�v���-�\u001a-u�\u000e�\u0000\u0016�\"�\u0011\u0016�\u0012X\n�`9����\nV�\u001aX\u000b�`=l���\t6Öu;[���z���m\u0007X\u0000\u000ba\u0011�\b�a\t,�e�\u001cV�JX\u0005�a\r��u�\u001e6�F�\u0004�a˺��}K�FKݶ\u0003,���\bv�Ű\u0004��2X\u000e+`%��հ\u0006��:X\u000f\u001b`#l�Ͱe��־��^��n�\u0001\u0016�BX\u0004;�bX\u0002Ka\u0019,�\u0015�\u0012V�jX\u0003ka\u001d��\r�\u00116�fزngk��R��R��\u0000\u000b`!,�\u001da1,���\f��\nX\t�`5����\u000e��\u0006�\b�`3lY����o��h��v�\u0005�\u0010\u0016���\u0018��RX\u0006�a\u0005��U�\u001a��ZX\u0007�a\u0003l�M�\u0019���o�~���ޠ�n�\u0001\u0016�BX\u0004;�bX\u0002Ka\u0019,�\u0015�\u0012V�jX\u0003ka\u001d��\r�\u00116�fزngk��Ro�R��\u0000\u000b`!,�\u001da1,���\f��\nX\t�`5����\u000e��\u0006�\b�`3lY����o�7h��v�\u0005�\u0010\u0016���\u0018��RX\u0006�a\u0005��U�\u001a��ZX\u0007�a\u0003l�M�\u0019��������\u001b��m;�\u0002X\b�`GX\fK`),��\u0002V�*X\rk`-����\u00016�&�\f[��l��[�\rZ�\u001d`\u0001,�E�#,�%�\u0014��rX\u0001+a\u0015��5�\u0016��z�\u0000\u001ba\u0013l�-�v���-�\u0006-u�\u000e�\u0000\u0016�\"�\u0011\u0016�\u0012X\n�`9����\nV�\u001aX\u000b�`=l���\t6Öu;[���z���m\u0007X\u0000\u000ba\u0011�\b�a\t,�e�\u001cV�JX\u0005�a\r��u�\u001e6�F�\u0004�a˺��}K�AKݶ\u0003,���\bv�Ű\u0004��2X\u000e+`%��հ\u0006��:X\u000f\u001b`#l�Ͱe��־��ޠ�n�\u0001\u0016�BX\u0004;�bX\u0002Ka\u0019,�\u0015�\u0012V�jX\u0003ka\u001d��\r�\u00116�fزngk��Ro�R��\u0000\u000b`!,�\u001da1,���\f��\nX\t�`5����\u000e��\u0006�\b�`3lY�߮�����\u0006-u�\u000e�\u0000\u0016�\"�\u0011\u0016�\u0012X\n�`9����\nV�\u001aX\u000b�`=l���\t6Öu;[����\u0006-u�\u000e�\u0000\u0016�\"�\u0011\u0016�\u0012X\n�`9����\nV�\u001aX\u000b�`=l���\t6Öu;[����\u0006-u�\u000e�\u0000\u0016�\"�\u0011\u0016�\u0012X\n�`9����\nV�\u001aX\u000b�`=l���\t6Öu;[����\u0006-u�\u000e�\u0000\u0016�\"�\u0011\u0016�\u0012X\n�`9����\nV�\u001aX\u000b�`=l���\t6Öu;[����\u0006-u�\u000e�\u0000\u0016�\"�\u0011\u0016�\u0012X\n�`9����\nV�\u001aX\u000b�`=l���\t6Öu�u�?|�x:=\u0007�Ϸ��~y�x��<�?>|��x�������\u000f����./~~����\u001fN+�t�o\u001f����O��||x��t8=<��Nw�>������O�\u0017޿��?����_n>\u0015�O?�?|��t���������/\u001f§_?}�^>?~ywy��\u001f���\u000f��\u0017}|~~��&/�����\u0005><>>���;��������˗�/�_NO��?O�._������ӻ˫\u001f���p�������T����/׺zy����?~��o��ˋ��VO�7r������������������|��\u0018�]~y|z~�������~y@�������O��\u0004�t�����p7}�>��ݻ�ۗ���W?�>}:<~�|zx��\u000f�\u000f��KF�7~�\u0003\f�ܿ��y�\u001e��便�����%\\}{f�����_\u001fp��X/��?|8=�\u001e�_������vuw\u0017����}\u0007�ww��\u0005�����?\u001f^�����y�������Ey��E�������Ͽ|�}z��SWׯ����\u000f�/�r�_o��s��Gs����������\u001f��{|���<>���C��\u0003\u0000\u0000��PK\u0007\btWx,�U\u0000\u0000�\u0019\u0004\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u000b\u0000\u0000\u0000_rels/.rels���J�0\u0010\u0006��>E��6�\u0015D��^D؛H}��L��$\u0013&Q��\u000b�������7�t�\u001a�xEΎ��]ӂ�hȺ8)x\u001a�7p�7�#z]\u001c�<��E\r>f\u0005s)�V�lf\f:7�0��G�Kn�'��Y�r߶גv@�\u0011�V\u001c�\u0002>�\u001d��=�z\u001aGg���K�X���+\u0001b�\n                            <aQP�|#^����\u0006\u000f�,g��s~[\u0019�h����\u0018��)!\u0017��[d�\n                                <0����`�Zo�|\"�\u0005�E��J�����7�\u001f\u0001\u0000\u0000��PK\u0007\b�Ξ��\u0000\u0000\u0000D\u0002\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0014\u0000\u0000\u0000xl/sharedStrings.xml�Zms�F\u0012�~���T��R�\u001a�-�dw�\u0011�$l\u0004\n ;�/[��آV\u0002\u001d ���x�l�ݾ|Ie�if�{��g�O\n                                    <m���\"���G�G�\bt�ȖI���h\u001e�z�G|�ק�(�i�N��G���^\u001e\u001f\u0017��ި�c����f}��\u001bU\u0016\u001f�����Z-����f}l\u0019��x���\b\u0016�.-?\u001f��O�`�&��i�u�˧\"���\u0012ͧS\u0011�}:.�|:���a/I�%$iQ&�L��;�}� U\u001b��c]��U��;�RA��<яj\rE��]�&�X|\u000be\u001c��Fx��`:�d,�.UQ�n�T%��eX'=�g\f�8�\n                                        <1.OO�S���u~�\u001b�(�k�7n'��np1<�\u0007�,���͸;�ױNu�J����0J�*�\u001a�{H�\u0012�y��,\u001b��\u0015e��9���kE,�H���R�,uZ&����(�_e�\u0014�\f��VY�\u0006�F%��`����\n���6h\u0003�e�\u000b\u0014��\u0005\b\u0018�u��p�\u001b�'�ٮ5De�u�\u001b��d��)x*]\u0012ɠ!��a��+\u001cBcP���\"~V�K�Q�.`��kwנ\u001eU�V��\u001a�\u001c�l��f0�z�R���*]h\u0016�\tgۻ<��\u0002�i��B1P�NKP�E��h���a�ȁ���(�tR.�\u0004]�alw�&�\u000eD�*���T�\u001e��\u0001}wr��P��Wz�#I\u001fH,�ˤ\u0004[�(��`\b7I�����+b��d�R�O�*�`�Ve��pF��Y%E����a\u0000�,-Wſ�3��~��\u0017\u001d1ؕ丯K�W*}�wl�\u0006˰���8+\u0015�N~�XM6��\u0013l<%��\u001f���S����|tm��h<�[r�b�@��S�xs�x�;Dy~�>��U\u001f�o~�*0T����Nٗ��?a�Y�-w\u000bd$\"'7��ԥJ�\bu��\u001d�m[F\u0011��H?v�\u0017���\"0\u0015A�v0��_\u0019��$�\u0010�*-Ԃ,~�ﹾ�\u0016��\u001d�����׈#$\u0016���ww3��g�P�\u001d���<��qil�̙�Q\u001c��-��϶�B�E\\��'|[~k��y7]d8-���\u001f��l¹\u000er��=$)�d\u0006��K�yu�?�\u0019LN�_�������䯫p|���v��n\u001e>�\u0016w�\"�3�z&�?{\u0004]�\u0017ĸ`�s\u00169c�\u0001��~l��¸GPi�#�\b�\u0011�\u0007�^\u001f\u0017�G�+\\���T��0k�L�vF�P�8�\u00102P\rB\u0005�F�@5\b\u0015�\u0013vo'��\fT�P�j\u0010*P\rB\u0005�A\u0018\u001f\u0018�>��\u001e�ܷG�5�GkĤ<� �G\u001b���Iy�A(�6\b��\u0006�<� �\u000fȬ���9O���\u0010�<\u0015B��B��T\b}�\n��S!�y�V-\u0004\u001d�\na}��3r�\r�F��?\u0006{\f��\u0018��1��\u0013\u00073x˛�a\u001a��ĻC�\u0011g[8\u0005�Kn@�Wvt�ȓ-�D 6U�B���\be�\u0019��������Yt\n                                            <s=\u000f�T��G�_-2��5\u0013w�a������i��\u0002E�RR%Ռ���\u000e��s�{|�xUu��ٮ;c�N\u001eV%�\u0019D�$X�\u0004�Ȳ%��6���ɓ�\u0007n���!�k�nl�'!\\�=��\u000f�E��]�f�\t�%���=\u00141D�\b�s�:��v�;�\\��`�N�\u001d�\f��i�Oz�����\b�\u0016�*/\u0010>�r&�~�\u0012�v�o���]�m�s\u0003c##ׯ�\u0018{\"±l� O�Jϳ��\u0004�귖�9m\u0011: |.<\u0018�\u0017S���x�%ݚe\u0016�\u0005S���?�Z\u001c���!������A�n��'^�b\u0005vv�5�4Ͻ���<�U�v��f\u0011�aj;�/<痟�\u0017�G�0U9q\u001c׏e(��ű4\u0014�u��p4��-�v*:���r*>�����O3���0y\u0010�½��¹�Gq�b�a�\u0019Ho0�H���HJ\u0010�p�Ե�c���\u0012fYRI�P/���c�l�q�6+����υ�1�Q\fS\u0011�`\u001a�eUѾ���A\u0014�H�\u0015�1�롿�%�\u001d[�Fo}\u0004�D��p\u0017�Ѷ\n                                                <a_C4�r\u0006���2�ΘGNC\u001f#\u0019��d�/����\u0011\u001c|\u000b�\\o��\u0013�=��W\u0001�IW`�v�\ffa0\r �C\u0011˚'\\?n�I[A�c��qcx�\u000e]Xx�\u0001c�w��腺Q��9�05�QK���\u001bO�P�\n�5Bu\u000f�\u0011�n�]��v)\u0016-\u0015�U�\u001c�I�\u0001�h=I]��\u0006S�(�y@5d'g��׵\u001d��X\u0019k�2֢e����Ϣe.�)d�hт�,~�\u00116)pK�/t�B&g�=\\��\b��~\u000fW�W����~%��!k֫\u0019o�{���\u0013�k\u001bR/f����V�ڗ�u���m�\u0010�Wb&|�T͍-�8|�8�e���i%[#X�\u001ev!5o3��O��h>�\u0015w�:6�X;ʡ�����L��Y���D0\u000e\u0003[��lS���}��:�\u0016��\u000b�v)�\u0017\\\u0015�\u0013Ut\u0018�[��$��p\u001d���6\u001b|\\m�n�\u0012������s%�O��C����ف\u000b-I2�\u00116�p����j=W��Di�\n�z=�R�$���6�&\u0016��\u000ex�^�f\u0016.�\\��\u0015�>Q�\u000f��f .����\\��\u0013\u0005~/��l\u0006�>5��a$E��Kz\u0013\u0006*\u0019+�ESE�P�k\u0010\u0014\u0015��H�h���\u001c�\u001bI\u0018�B\u0014\u0016��%*��������T����\u000f�Z��p�f�\u0006a��\u0019�\"\u0007�Yws��o\u0016���rf���\b�\u0012\u0004g�&���T�*���ܤ[�e�q�m�M�\u001d�S��c�\u000e\u0005�\r����AP�!��ͼI7�o���M���\\���&��c�e\u001bx�n�;�{E�I��\u0013UGr��H\u0001NՑdaҪ�zv#9ä\u0015\u0001��Fr�I�\u0001���\u0000~*ÏyL�1��d%�IK�=��|@|\\����!X�`�r���J=%\u0017(M��\u0005��\u000b&�\u0017LZ/�O�\\٧�\u0003�@�\u0015JC�O�\\���ġ���?�$���8�\u0012\u0013Hdr4A�C��\u0011\u0005�3\u0018��\u0011\u0006�5\u000e_�9��d���/G\u0015���\u001a�#\u000bJX�ը\u001cEP���Q9z��\u0004֨\u001c;PJ��Q9N�\u0004D�\r��\u0003JC�*�c\u0004J=\u0010*��\u0003JCP\u0002�I/�W\u0001��;��7��p���\u001b��Y�\u00196V\u001b]�Y���駟�e�9A\u0010�,}�\u0013��(��/\u0000\u0000��PK\u0007\b_��UX\n\u0000\u0000�-\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001a\u0000\u0000\u0000xl/_rels/workbook.xml.rels��Mk�0\u0010����)��\u001f��K���\u0014���\u000f\u0010t4a�\"��u�}�CW�\n\u001e\u0004/\t����@�so4�BO��\u001c�(\u0006��r��m\u000e\u001f���\u0013���\u001bj\u0011��$UG�7�R\u000e2��s�$\u001aA����F7�\u001b\u0011(r�坨��E����q\u0003�I�]�\u001c��N��·\u0018r�v�J\u00121\u0010\u001f�$�\u0006V�:\\2�5����U�\u0006mx �\u0003���\u0018���ҍi�y�nc�~��ߘv��\u001d6�\u001d�4��c�\u001e��-�͚ėў� � \u001f��?�P]&:��\u0015n\u001a���P���<��\t\u0000\u0000��PK\u0007\b�{�\u0001\u0001\u0000\u0000L\u0005\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0013\u0000\u0000\u0000[Content_Types].xml̕M��0\u0010���\u0015F�b)���\u0014�{�Ǳ]hz.�4�E$��&���4!\u0014�\t!\u0017��y�G3ਫ਼\u0006g�\r�d���/X\u0001^�6�������\u001d{j^T�m�T\f��T��(�\u0017\"�\u001e�L\u001c\u0003���\u0016���8�N\u0004�V�\u0003�X�\u0015\n=���r\u0006k��\u001b��h(�e�/�A�ď\b6\t�OV|�\u0015df�d\b�(I\u0006��x}B+��\\9~�z\u0013���Y�T�@:�Ԩ�#�$d\b\n                                                    <W�\u0002c�\u001a\u0005\u001a�ځ'\u000e\u0003�נ�\u00101@$\u0003s-\u0014F��qx���\u001e��0�~\"�2��C\u0018�H����Q4�K�;p2�\u0014\"H�z\u0000r�\u001feO7��������\u001d�\u001e�5-�͝4~�\t��`w>\\l3�LF�&��I�����n���o�ǻ3zuwF������>B+ז�OyA���{�YԿ�y\u001a �5��\u000e\u0000\u0000��PK\u0007\b�\u0000C5u\u0001\u0000\u0000\u0015\b\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000docProps/app.xml��AK\u00031\u0010\u0005����0�nV\u000f\"%�E\u0010�x\u0010\\�א̶�d&dƲ��R\u0004�Ǚ\u0007\u001f��Z�9a��4�]?�A\n\u001c\u0013\u001dF��_6�`D=E��p�3\n�ν7��4���d�\u0011��uk��#\u0016/=W���[�*=���eI\u0001�9|\u0017$����`qU��qS�@�\u0015�'�\u0015�\u001c.��k>W\u0014�:c����\nN����\u0012=՚S𚘦W6���������׽�O\u0000\u0000\u0000��PK\u0007\bf��q�\u0000\u0000\u00004\u0001\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0011\u0000\u0000\u0000docProps/core.xmll��J�0\u0010��OQr�L��Hi�7O\n�\n^C2v��3dF�}{٢Up���\u0017��\u000fK��'V\u000e%\u000f��F5�]�!O�zy��ݪ��foc�8�\u0013�:�W��Ε���\u0010V\t�͒b��Ѡ�\"�\u0001�;b��\u000ba^R|+5Ya]�\u0004dݻ�\u0010���@B�ފ�spG[Q}'�ے�Q�\u001a�\u000e0b�,\f�n�צ '/~��`M|\u0011��M.\u001c65ϳ��W�7��ׇ�������S9Tc\u000f�\u0006\u001a�\u0002\u0000\u0000��PK\u0007\b;�|\u001a�\u0000\u0000\u0000l\u0001\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\r\u0000\u0000\u0000xl/styles.xml�mo�6\u0014���SD�4m�n�\u0000���\\u�fڛiںio]b��\u001f\"��H?�>�>�d�\u0012�B\u001dpHBF���O��\u001f�\u001c�\u0006\u001a|ZQ�\n                                                        <!�b�&�����،ǘ-&�����{�)�\"HeF�oK������\u0013��2��u��\u0012Q�^�\u0004�\u0015%s.(��5\u0017\u000b7M\u0004�q�&Q�\u000e<o�R�\u0019\b\u0003�H#*Sg�\u001f���Ѧ��\u000f?�\u0013��G�ɗ��\u0018M\u0000���������C�e\u0019pK'��N��������>|�g�xw�Z�\u001d�{\u0006��\u000e��|�k�k�S\u0013��]����ݛU\ra�>;O�L�\u001e� E������9��d[cfK(R$�[8��\u0011��\t�\"O�h�\\`W�\u001f����D\f\u0019��T�d��?4'�\u000b)}Po\u0014&d�F݂�!\f\u0012(%\u0012,8���,A\u0013�8C9\u001c=�0���R�(`V}J�\t��\u001d���ML�σh�y��p�ִT��_%jEG�jQ\u0014\r��\u0012���N��z��m:jT�~��.z_��m:J��!\r�\u0007.b$v<4o\n\u0003����Yz�aશ0\u0010��^w��0�<y�#y�V����]y�>�E���\b���\u0011<��\\��g_δ�ðt���\u0019�ZOQ�\u001f�a��#6�Tb�qN�{8�\u0013��M�i\\��{X��a0C��9/�\u0018UǬ�\u000eL\u0012��\u0011�`\u0014�v\u000f�M��y�uķ{Uv+�~~�\u000fHD��*Z\u0011\\���u�\u0007��\u0010U�y�Q���3�>-j4\u000f�\u0001|1�Yr��9��\"X �\u0004$��,~18]\n����\u0011ί%Z�_��\u001b�'$$���9 ��-`r�V�:Z�Ki�o����W���]�Қ��\u0017'٢1h�I$O�Ϥ��9\u0015\u0013ߚ���'o�����:vT!�5 ��3�\u0004N�Lt��?\"\u0016�p\u0017æ\u001c�\u001c��<2�`&�۸�H�g\u00147��Ʌ�\u0011�sFH\u000e\t���a��Tb_����p:���OF��ӥ\u0013�y��J[��_?���Vӟ4����b�ar�uz�a�w���1��\u0013���^&~w�X< ��I��ĂI[�pc@\u000e\r�\u0019b\u0012��!i/�4�!��:������YR�T�Z�KwCȢl;�4{����w��&�Q��)�29$t,�)�3t�=P�_07!�m�X<�o��_?�*�O�L�(�\u0018�T����~bL�C��TH�-2i�Sn�T�w������񏋝Q�d�Z�X�\u0019x��rs�R�e�u,��{�a�\u0016��\u0019�\u0017\u0000\u0000��PK\u0007\b��1�\u001d\u0004\u0000\u0000�9\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000xl/worksheets/sheet2.xml�Zߓ�8\u0012~������\u0016�\u0007�Ю����r{U�d*����7�h�T0�\u0001\u001e'���@�h\u001c�w\u000f����Z�p���\u001b��>\u001f2��\u0014ej�O\u0003�{&��$͟7�o\u001f�|\u001f�?m��>��S�7��>\u001f������:��Z���9�e`�&�|Ȟlq��2���<\u0016&N�I�l�\b��C���v�\\�/��4�L�M��������1~6\u000f���،W\u001f�}�<\u0018^\rƷ�U��]'����o�\n��_�\u001f~���\u0013��v���\\\u000e>{�4O������U�\u0017.�y�ޞ���p��rt�\u001fE��MsSn��8�\u0017?���~1qb����Ma�\u000bE���>ڷ��!����dfW�d���S���y�rx�Y������U�=���\u0016���Ԝ7~^o@�{�=�kܙ,���{�����Ɨ��}���3��)!������z\u000b��_�qX;Z3���O��\u001a��\u001b���z\u0017�qn6~{\u0017�\u0017��������T��O�o���0�\u000e�k\f?w�����}�9�=�bj\u000fo|ʂH�ݤ�p��٬l��=���r��}�$\u0006��\u0010����\u000ei��-�/��|�&�~�3�{�SY���\u000b�Nl׫�͖���5\u0018�\u0006\r���,3�)�_F\u0007�\u000f No�E�ӻ{u!Pê�q\u0015oׅ={E��]��\u000f5�ˍ�}�����]�l#�^��s��Ua��\u001c��a�\u001c\u0016\u000e&1�Ojl~���I���\u001e�7s\u0000\u0016а�\u0011H؃���\u0013��y��\\k#�6\n�;�\u0003��$5t\u0015s�[��\u0019�^�0�\u001aǕ=�Dp]o�1.\u000f�(�qU��\u0010���U7�F=n��\n\u00077�\u0019W��\u001a��\u000e��\u0019�\u0012�8A����\u0019�Д\\�\u001eȇ\"�.�:���Af�!���f\u000b�Aj�O�5q��\u0002lP \r\u0011l�b�\u000b�A�\u0014Q�vUH�\u0002l\u0010\"E��]%ҩ\u0014�L蠵\u0016�W@E4�\u0004^����a�]+�A(��b $�g�(:4��\u001bF\u001c㗭v���4��-W3�\r�ShW�M\u000bMf0��c\u0006$g-G��%yg4J\u0006s)\u0010H�0��A��H\u001e22�\u000e\u0018P�a\u0014wC\n\u001bQ<�Y(g���C�#��6\u000b[���!S\u0001Wbf-�7�fI�\u000e�q���e,FB=d�57s`7G��R���}�˜�^�\u0010�9Cx躹3\u001a�pF�|P3a��M\u0012|\u0014�\u0015!�\u0007��`\u0003�9�qJ\\\u0001�\u0011ɥ\u000e5�\u0007\u0007�s�攸i��\u0005�\u0010�9\u0012�)q�\u0004�\u000b�A4\u001c��(q\u0013\u0005W\u000b�A7\u001c)�(��%Z\u0000\u000eb�H�E�+'�o\u0007\u000fAP!RfQ�J*$\u000b�!a�H�E�\u001boC�\u0000\u001c�\u0019\"�\u0016%��\u0006�\u0000\u001c\u0004\u001a\"\u0002��Uh�\u0017�\u000f\u001ev0�RW��\u0002���\rd!�*�\b�j�hm�t!��<Pd&����P9�x\u0000�\r�q@@��]���ڴq�\u001b\u000e\u0001��H.��{����ZA\\_\u000b`�h�<J\u001a�\u000f�nI\u001a\u0002\b/0�S7�\n��\"�<`s?\u0005\b/0��ɓ��l!\t�\u0007\u0007�\u000b��n�\u0015�\u0002��\u0013>���Kp!\u0016��v\u0004���dC�\u0002p\u0010��R\u0012u�)�\u0002pP��R\u0012uc��\u0016���\u0004���\u001b{�����b\u001e\\BJ�XJ�n�d\u00018\bTb)���W�\u0005�P�)��\n�l\u00018(Tb\ne�B%_\u0000\u001e��L���E0W�Fk�=�R!T@�L�-\u0007/Ϥ\u0013�\u0007���\u0018\u0007\u0004$�\u0014�d�֦ֽ\u0016\u000f%�G\"\t�U�\u001c%��g]�]'+��jI<J\u0017�vF��\u000b\u0005LW(�ݠ�FL�:\"2\u0010so)��\ne��E%[\u0000\u000eLW(�ݍU|\u00018�\"��\"�n�\n\u0017��h\u0014���\u001bt�X\u0000\u000e�QX.bn�Ur\u0001��3���\u001bt�Z\u0000\u000ebRX.���Q�\u0002p�E\n�E�\r�J�\u000e\u001e�@#,\u0017M\u0014\u001a�1��4�+�#Ph�)��\n��\u0002pPh�)t��\"b\u000b��\u001b�\"�Ut\u0011��t�ڴ��\u0003\u0016H=\u0013�#PU$�X<�Ć�8 ���-H�hmژ�\r��|\"$\u0013�1%Rc�\u0014�&�\u0006�G-�GYc�Zkt�q�\u0006�k���������;\r|�(�'�En�\u0015��́\u0003�5v��\nU;���T��θ !i$!MN��Sy\t��p���K\u0003��\r��v+/\u0012\u00062�y��A\u0002z��B��8�w}C奝�몳!Y�\u001b*/}K�'�\u0017%��E���d��j(#6�FJ\u0006G�\u0004!�䨡���/�/N)\u0019\u001c2\u0012���ުE�J\\A\u001f\u001c3\u0012�\u0000�ӛ�\u000b�\u0007'�\u0004+�&����M���F�\u0015a|r\u0004K�\u0002��y#�ʰpr\nK�\u0002x5��\n�pr\u0010Kƕ�\u0010�\n�$�P28x$���3�r��< j�\bux�O�\u0013�\u0001(:�@\rO��G7�tF]����}{$5�tF}\n�&W\n��j��s,Ҽz�R�����I�?C��3���W\u001eL�5��m�~�y\u0015gw&�L1�Fz1E��\u0003��j��\u000b�׸xN��˚^A\u0012��~4).�m���\u001e��M�T�/�G[U����\u0006E\u0000x��\u001a|o;,۵�v���;�GS<�_MӂT\u000e�\u0007�Ң���g��tx4M+ԥu�����y�Wþ/�\u001bI�9��7��\u0017S��-R�W�\u000f�h������N���\u001dd�חN?؂�,�}z�'��Ӫo\u0014��\"\u001etX�L���������榁|�޸��������o�v\u000e���1��@}�J=\u001d�닃�4n�����\u0014&���������/П�]�$���n��\u000f�\u001f����+\u000f��\u001eL�3g�=���>��S\u0016\u0017�XcEY���z\u0005 5��V�\b^�\u001a��|߀�H���7n׫�9x��\u0000\u0000\u0000��PK\u0007\b\rV�zC\t\u0000\u0000O,\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000xl/worksheets/sheet3.xml���s\u0014ٞ����+0��}�$�Aӽ����y�>��$�L�\u0000�B�Y���6I!�{��-�>����:�>[���\u0012N�\b���ǧ�/����������W'/�?�r�����ޜ�������~������߿�~}}��?>}������ww_���?����OW__�|���\u001f�>�zs�����˛��~��������'}����ի��?]}�|�������\u0017�~�xw}�ݼ�~s���ǯ�'o_����\\ߵ_\u001e���)�~����߾�������?|��|�{xq{�뛓���i{���\u0013���݇뿾~��/������_�����/w\u000f����^|���/����\u001f\u001f���>\u0018�~x�~�|������\u001f�\u000f�797\u001f���׷3��oo�}���o��57���w߶������x������e�?�>~�|m�ϧ�|�����_���xw?�s������~�������/�Ǔ\u0017w7_��\\�x�h����~m����������|2�\\}�~s�y��_�\u000f������ ��?7<<`\u0007�?\u0011������\u000f��{�`}�m�\u0015�\\}�~sr�����/w\u001f��~���׏�����{���ɾm��\u0015���������\u001f�[y����7������������'=-|�����_\u001f���#������\u001e��?�����t�\u001foN6'/>}���_����#v��\u000f��~s�;y�;y��\u001f_�n>��\u001f{�b�}��/7\u001f�;��\u001e.��\\f��.�;\\fg���ˋ�\u001fs���*{�of��~3��˜Z.s�r��~3g����k\u000f���2���\u0003pq��ſ�\u0000\\\u001e�r��=\u0000��|��2�/O����\u001d����\u001d���_������������\u001e����~���������6��������������F��q��鈿�q{~�͏���)8�\u001f���St6?.;���l~\\z6O�����l�\u0002��q\t�<Eh��2�y\n��ǥh�\u0014�͏���)G�\u001f���S��?.G�o\u0000��\u001cm�r��q9�>�h��r�}�����h����\u000f���]ǿ��?\u0007�߿������/��s0����������mǟ\u001f����ʽ��z����\u0017������/���o�[<�6ܽ9�z����o7�������Úw�k���|\u0013G�+�[^��R�G�^\u001eS�)�\u0014��\u0012)��LJ.��RJ���R��FJ+���K\u0019��R&��|{�׷\u0013��v�������\b�\u0016G�h��\u0019��j�4�ց��\u0002����HS��'ZJ*%��K)��R*)�\u0014#���J��R\u0006)���&�\u0013��v�w\u000fK/f��tq���l\u0017g�y\\r����)t��l�g�5�r��A_1g�f��A�Ú-L\u001aY�\u001c�\u001a�d\u0006��R2)��BJ)��RK1R\u001a)��NJ/e�2J�l2���[\u0006��_�����\"\u0004�E�K9�\\M�&�@���PS�)��\u0013-%��Iɥ\u0014RJ)��Z���Hi�tRz)��Q�d�ى>=y����\u001fُό<�������i?]ls�.\u0016��x�n�M�y\\�����\u0016�l�Ú���.�\u0017{˫<\u0007@J %<\u001a���������\u0012)��LJ.��RJ���R��FJ+���K\u0019��R&��\u000e�ٷ�}��t�M�rq�\u000fkN���\u001c�\u000e���+q���^1[�g\u000bW�\u0016�f{��[��%RR)��\\J!��RI��\u0018)��VJ'��2H\u0019�L6�\u001d��o��\\m�N�#ŕ�I�\u0004RB)��XJ\"%��Iɥ\u0014RJ)��Z���Hi�tRz)��Q�d�١��vh/\u001e���hO\u0017ߤ�\u001d\u0016�\u000e�&W���_3P�??�\u0014i�/䉖�Jɤ�R\n)��JJ-�Hi��R:)��A�(e���D_��ž\\ls�6��~�f�x��y\\2��^�-�=�y��޾Z�`oy��\u0000�f\\<\u0019\u001fXf\\�M!\\1c4��ͫW//\u0016�F,�L��R2)��BJ)��RK1R\u001a)��NJ/e�2J�l2\u000b��ժd<�(񿊆e���9�5\u001c��E�'os���\u000b=��:��;�\r�\bq�f�h>�O���\tѳ&�RM��\\S���Ti�5\u0019M��VS���4h\u001a5MV�Gf�.2��z��9���\u0010��,���-�#��Ĳk�,:���l�Hl��H@�\n�*t�P�B�\n�*��P�B�\n\u0015+t�P�B�\n5+��P���M�f�.\u0012��z��9�=\u0012[����?��H,k)ˢ�ۨ��l���\"��EBW��RM��\\S���Ti�5\u0019M��VS���4h\u001a5MV�Gb�.\u0012�\t{��9�=\u0012;����?��H�-#q���O���l���\"aK�.j5��2M��BS���Tk2�\u001aM��NS�i�4j��4O�ss�9ԙ�\u001f�����\u0016ٞ��38d�a�����_#dg�\u00190�\u0001�5\u0003F�\u0001ڞ�z��t�\u0003]�jJ5e�rM��RS���d45�ZM��^Ӡi�4Yi����\u001c�\u0002�&G�����k\n4��\"M��DS�)Ӕk*4��*M�&����j�4��\u0006M���J���\\�n\u000e������Kr�VY϶6\u0017�\u0003�WM\u0015�\u000e!X\u0004\u0016ot�)Քi�5\u0015�JM��Z���hj5u�zM��Q�d��a?_w[��^M΁��\u0007�\u001e~��\u001e��ѿX\u001e��E��\r�ǳY^��<��\r�~�r\u0006=h�)Քi�5\u0015�JM��Z���hj5u�zM��Q�d�y\u001e���͡@���\u001d��\u001f\u0016Yo�\u000f�/�9,��^��Ȏ�_3^\u0000�kƋ��Y\u0012��dM��LS���Tj�4՚��FS����k\u001a4��&+�\u0013p��\u0000YĽ��hr5y�|M��PS�)֔hJ5e�rM��RS���d45�ZM��^Ӡi�4Yi���W�o�z��\u00167��o�O�lg\u001b�\u0005���US\u0005�C\b\u0016��[��jJ5e�rM��RS���d45�ZM��^Ӡi�4Yi~��u�[��jr���n���[�G�������o�EG��ǳYnf��.��b�f*=i�)Քi�5\u0015�JM��Z���hj5u�zM��Q�d�y �5�[��jr���n���[�Gt\u001f��2\u0010�&�(\u0010�&�(\u0010�&�l��~�'M4��2M��BS���Tk2�\u001aM��NS�i�4j��4\u000fĺ\u001ew�{\\M�\u0016z�-��zK���\u0003�|��e�q l=�Q �=���v\u0019\b]�jJ5e�rM��RS���d45�ZM��^Ӡi�4Yi\u001e���@Ȋ�&�@�@�!\u0010��=��@,_\u0011jYt\u001c���l���\u0003q�\u0004��4єj�4�\nM��JS��hj4��:M��AӨi��<\u0010�޿��]�&�@�@�B t�{D��8��#ǋ�\u0003q4�-\u0010��@�/�\u0002�\u000baM��LS���Tj�4՚��FS����k\u001a4��&+�\u0003�\\\bo\u000f���g��\u0013xZd�\u0004�\f;��\"�\tle��\u0019/���5�E��~:�]�\u0019�=��TS�)�Th*5U�jMFS����i�5\r�FM���\u0019x~��Vw��\u001cM�&O��)�\u0014j�4Ś\u0012M��LS���Tj�4՚��FS����k\u001a4��&+���sϻ=����g�\u001f>���z���`\u001e��j�\u0000v\b�\"�x�+]M��LS���Tj�4՚��FS����k\u001a4��&+�\u000f���\u000bouݫ�9����`�ï\u000b�#�?����[\u0016\u001d��\u001f�f���6�������9\u001f�\tkJ5e�rM��RS���d45�ZM��^Ӡi�4Yi�s\u0007׽Kx'��w��\u0003Y\u0003�d�@�-�#�\u000f��\u0005��EG�8��\u0012��!\u001f\u0003��ɢ��4єj�4�\nM��JS��hj4��:M��AӨi��<\u0010�z��59;�w�\u001b�-�#�\u000f��e��EǁX�\u001b���n�|�GO�hJ5e�rM��RS���d45�ZM��^Ӡi�4Yi\u001e�u��N�ƚ�\u001d��;����\u0011�\u0007b�̏e�q ��ƻyo�=z\u0002HO�hJ5e�rM��RS���d45�ZM��^Ӡi�4Yi\u001e�u��N�ƚ�\u001d��;����\u0011��vs�|e�e�q ��ƻyo���X\u0006B�ƚRM��\\S���Ti�5\u0019M��VS���4h\u001a5MV�\u0007������N�[��E�V�ɰ\u00158,\u0012��N7�k�\u000b`�p�x�|������'�z�DS�)Ӕk*4��*M�&����j�4��\u0006M���J�\f<��w��`M�&W����\u0014h\n5E�bM��TS�)�Th*5U�jMFS����i�5\r�FM��������\u001d���w��又{Ze=��\\0\u000f�_5U\u0000;�`\u0011X�ӕ��TS�)�Th*5U�jMFS����i�5\r�FM���}�[w����\u001c�~G0��ׅ�\u0011�\u001f��+A-����f���|\u001b���+A���u'�)Քi�5\u0015�JM��Z���hj5u�zM��Q�d�y .�\u0005BVq�49\u0007�\u0007�\u0002\u0002!���>\u0010�W�Z\u0016\u001d\u0007�h6[ .��].\u0003�{cM��LS���Tj�4՚��FS����k\u001a4��&+�\u0003��7���X����x\u0007����?��@,_\tjYt\u001c�5��n�\u001b�/���н��TS�)�Th*5U�jMFS����i�5\r�FM��f�د���7���7�Co����>\u0010��\u0010Y\u0016\u001d\u0005�x6K ��\u0016�X>\u0001�'M4��2M��BS���Tk2�\u001aM��NS�i�4j��4\u000fĺ�x�{cM�\u001ez�=��zK���\u0003�|e�e�q ����yo�_���XO�hJ5e�rM��RS���d45�ZM��^Ӡi�4Yi\u001e���w�ةq+���\n<\u0019�\u0002�E�\u0015���x�x\u0001�\u0017�\u0019/����ū��׍����TS�)�Th*5U�jMFS����i�5\r�FM���\u0019x�g}��\u000e��hr5y�|M��PS�)֔hJ5e�rM��RS���d45�ZM��^Ӡi�4Yi~���'z\u000fM���������z���`\u001e��j�\u0000v\b�\"�x�+]M��LS���Tj�4՚��FS����k\u001a4��&+�\u000f��w��uݫ�9����`�ï\u000b�#�?��W�Z\u0016\u001d��\u001f�f���6������nFwRM��\\S���Ti�5\u0019M��VS���4h\u001a5MV�\u0007�l] d\u0015�N�s { � \u0010rK���\u0003qt_��8\u0010G��\u0002q6\u000f��G��z�DS�)Ӕk*4��*M�&����j�4��\u0006M���J�@����7���7�Co����Ϸ��Om\b,��\u0003��7��{��~�#�����TS�)�Th*5U�jMFS����i�5\r�FM���X�\u001b�uo���Co���Xo�\u001f�} ��!�,:\u000eĚ�x?�7Go�ѓ&�RM��\\S���Ti�5\u0019M��VS���4h\u001a5MV�\u0007b]o�׽�&g\u000f��\u001ezc��D��X��Ȳ�8\u0010kz���7�l�\u0002�{cM��LS���Tj�4՚��FS����k\u001a4��&+�\u0002q��3�O\u001f;5n\u0005�\u0016�Z�'�V�H�\u0002��1^3^\u0000�kƋ����9_���X��hJ5e�rM��RS���d45�ZM��^Ӡi�4Yi���s\u0006t\u001d����j�4��\u0002M��HS�)єj�4�\nM��JS��hj4��:M��AӨi���\n                                                        <?7���&t�]�b���~Xe=��\\0\u000f�_5U\u0000;�`\u0011X|�+]M��LS���Tj�4՚��FS����k\u001a4��&+�\u000f��w���W�s �\u001d��Y\u000f�.|����/_\tjYttG<��v�ې��3�{\u0019�\bkJ5e�rM��RS���d45�ZM��^Ӡi�4Yi\u001e��F��Ў~Ҏ��\u000f����\u0007����E�~^\u0016~���\u0002\u0018/\\3^4\u001f�8\u0000�%֔j�4�\nM��JS��hj4��:M��AӨi��<\u0000�o�=�M�&G�����k\n4��\"M��DS�)Ӕk*4��*M�&����j�4��\u0006M���J��������\u0002lqۼ�q�O��g[�\u000b����\n`�\u0010,\u0002�Ou��)Քi�5\u0015�JM��Z���hj5u�zM��Q�d��a_W���zӳe\u000e����9]ћ����ts�j��C��K}�\u000eۨ�׿�\u00185\\3j4\u001f��������!����TS�)�Th*5U�jMFS����i�5\r�FM���Y����Ջej,���25+�U�tV�n.v�G�;��w��\r{���\u0015M�a���?��R�'M4��2M��BS���Tk2�\u001aM��NS�i�4j��4\u000fͺ&��R�.�=�βh{�\f����^.C3+`���e`tSl\u001dt��\tˢe�C۠ǁ�7���XO�hJ5e�rM��RS���d45�ZM��^Ӡi�4Yi\u0016��u�0>[�m��X\u0016\u001d\u0005氆\u0003����vq\f��\u000b=\u0007�:��\u0015�EG��\rz\u0014���?mN�/�Г&�RM��\\S���Ti�5\u0019M��VS���4h\u001a5MV�\u0007f�;��t��9���x2��yzK���\u0003�,�,��n��g�\u0005b3\u000f������\u0015�z�DS�)Ӕk*4��*M�&����j�4��\u0006M���J�L<W�g�����vTO<-��\u0013O���a������v����!g����L\u0019���)���?mζ�/�7��2єj�4�\nM��JS��hj4��:M��AӨi��<\r�oG>���&G�����k\n4��\"M��DS�)Ӕk*4��*M�&����j�4��\u0006M���J���\\>�\u001d���7��\u000f����z���`\u001e��j�\u0000v\b�\"��L\u0017͚RM��\\S���Ti�5\u0019M��VS���4h\u001a5MV�\u001f�uoG>[6|�'n��Y\u0016��˿\u000f?��g]�\u0016=u\u0015/OO��:���\u0014h\n���.\u0011�Ʊ$BW՚RM��\\S���Ti�5\u0019M��VS���4h\u001a5MV�'⹪>;Զߟ����\"�������q��ͽ���6�_3b\u0000#�kF��#\u001e=�\u001blM��LS���Tj�4՚��FS����k\u001a4��&+�3���\u0011��N�&G�����k\n4��\"M��DS�)Ӕk*4��*M�&����j�4��\u0006M���J�����\u0011�=vj�����.�VY϶6\u0017�\u0003�WM\u0015�\u000e!X\u0004\u0016��NXS�)Ӕk*4��*M�&����j�4��\u0006M���J�þ�\u0013>�U�˟�eYt|K��ju�fU뫗�6�{\u001c]\nk\n4��c}\u0017�o�X\u0002�;_M��LS���Tj�4՚��FS����k\u001a4��&+�\u0002q�����Ǿ���\u0016���\f��\u000f��n��\u000f��.t�L\u0018���\t�ń�\u001bz=^�)Քi�5\u0015�JM��Z���hj5u�zM��Q�d�y\u0004��\u001c|��ZM�&W����\u0014h\n5E�bM��TS�)�Th*5U�jMFS����i�5\r�FM�������=?T��\u0003��\u0001s�<0\u001f,8���v��E`�.S5��2M��BS���Tk2�\u001aM��NS�i�4j��4?��e�.S59�\\M�&_S�)�\u0014i�5%�RM��\\S���Ti�5\u0019M��VS���4h\u001a5MV����2�\\�T�49�\\M�&_S�)�\u0014i�5%�RM��\\S���Ti�5\u0019M��VS���4h\u001a5MV����7�˖�&G�����k\n4��\"M��DS�)Ӕk*4��*M�&����j�4��\u0006M���J����v����&G�����k\n4��\"M��DS�)Ӕk*4��*M�&����j�4��\u0006M���J����\\���R�����i�5\u0005�BM��XS�)Քi�5\u0015�JM��Z���hj5u�zM��Q�d��y~n.�e)�N�����i�5\u0005�BM��XS�)Քi�5\u0015�JM��Z���hj5u�zM��Q�d��y�|>ϲ�y����j�4��\u0002M��HS�)єj�4�\nM��JS��hj4��:M��AӨi���<_<w�\u0017��y����j�4��\u0002M��HS�)єj�4�\nM��JS��hj4��:M��AӨi���<\u001f��9}y��Gx�ȅ�\u001159�\\M�&_S�)�\u0014i�5%�RM��\\S���Ti�5\u0019M��VS���4h\u001a5MV�\u001f����.[�w�\u001cM�&O��)�\u0014j�4Ś\u0012M��LS���Tj�4՚��FS����k\u001a4��&+͏�n�q��&G�����k\n4��\"M��DS�)Ӕk*4��*M�&����j�4��\u0006M���J��_}�u7����j�4��\u0002M��HS�)єj�4�\nM��JS��hj4��:M��AӨi������>��hr5y�|M��PS�)֔hJ5e�rM��RS���d45�ZM��^Ӡi�4Yi~��V\u001fw�ljr4��<M��@S�)�\u0014kJ4��2M��BS���Tk2�\u001aM��NS�i�4j��4?�竏�.>59�\\M�&_S�)�\u0014i�5%�RM��\\S���Ti�5\u0019M��VS���4h\u001a5MV�\u001f����]���\u001cM�&O��)�\u0014j�4Ś\u0012M��LS���Tj�4՚��FS����k\u001a4��&+͏����kSM�&W����\u0014h\n5E�bM��TS�)�Th*5U�jMFS����i�5\r�FM��f������~�[UM�&W����\u0014h\n5E�bM��TS�)�Th*5U�jMFS����i�5\r�FM����}u�z�[UM�&W����\u0014h\n5E�bM��TS�)�Th*5U�jMFS����i�5\r�FM����}u�z�[UM�&W����\u0014h\n5E�bM��TS�)�Th*5U�jMFS����i�5\r�FM����}u�z�[UM�&W����\u0014h\n5E�bM��TS�)�Th*5U�jMFS����i�5\r�FM����}u�z�[UM�&W����\u0014h\n5E�bM��TS�)�Th*5U�jMFS����i�5\r�FM����}u�z�[UM�&W����\u0014h\n5E�bM��TS�)�Th*5U�jMFS����i�5\r�FM����}u�z�[UM�&W����\u0014h\n5E�bM��TS�)�Th*5U�jMFS����i�5\r�FM����}u�z�[UM�&W����\u0014h\n5E�bM��TS�)�Th*5U�jMFS����i�5\r�FM����}u�z�[UM�&W����\u0014h\n5E�bM��TS�)�Th*5U�jMFS����i�5\r�FM����}u�z�[UM�&W����\u0014h\n5E�bM��TS�)�Th*5U�jMFS����i�5\r�FM��f�}�ju���T\u001cx0\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IXݸ>,�IН+�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-����}X*���X0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$auO��T&A7�`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H��\n�a�L�.q�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m������R�\u0004�`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t��߇�2\t��\u0005s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012Vw�\u000fKe\u0012t+\f�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$���\u001f��$��\u0018�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�$?,�I�]2�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�͓�Y�1o�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�\rt��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$a}Ǽ��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��7�1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d�\u0006:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c�@Ǭ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012�w�\u001b蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H���y\u0003\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1o�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�\rt��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv�'a��c�BǬ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012�w�[蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H���y\u000b\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1o�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�-t��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$a}Ǽ��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d�\u0016:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c�BǬ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012�w�[蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��6O�n}Ǽ��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��w�1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d�\u000e:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c�AǬ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012�w�;蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H���y\u0007\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�\u001dt��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$a}Ǽ��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��w�1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m�����y\u000f\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�=t��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$a}Ǽ��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$����1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d�\u001e:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c�CǬ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012�w�{蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H���y\u000f\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��<\t��;�S蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H����\u0014:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c>��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��O�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�S蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H����\u0014:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c>��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��O�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�S蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H����\u0014:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�͓p��c>��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��Ϡc�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�3蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H����\f:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c>��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��Ϡc�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�3蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H����\f:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c>��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��Ϡc�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��<\t��;�s蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H����\u001c:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c>��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��ϡc�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�s蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H����\u001c:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c>��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��ϡc�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�s蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H����\u001c:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�͓p��c���Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��/�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�\u000b蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H����\u0002:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c���Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��/�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�\u000b蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H����\u0002:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c���Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��/�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��<\t��;�K蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H����\u0012:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c���Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��/�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�K蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H����\u0012:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c���Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��/�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�K蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H����\u0012:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�͒�}��c~X*�\u0000怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;懥2\t�c\u0006s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012Vw�\u000fKe\u0012t�\f�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��\u001f��$�\u0019�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1?,�I�\u001d3�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c~X*��;f0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$au���T&Aw�`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H���a�L���\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d��R�\u0004�1��`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;懥2\t�c\u0006s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�y\u00126�;�\rt��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$a}Ǽ��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��7�1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d�\u0006:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c�@Ǭ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012�w�\u001b蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H���y\u0003\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1o�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�\rt��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$a}Ǽ��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$l�w�[蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H���y\u000b\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1o�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�-t��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$a}Ǽ��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d�\u0016:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c�BǬ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012�w�[蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H���y\u000b\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`���Iح�w�1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d�\u000e:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c�AǬ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012�w�;蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H���y\u0007\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�\u001dt��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$a}Ǽ��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$��w�1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d�\u000e:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�͓�_�1�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�=t��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$a}Ǽ��Y�\u0003�y`>X\u0000\u0016�E`1X\u0002��e`9X\u0001V�U`5�\u0001k�Z�\u000e�\u0007\u001b�F��n�$����1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d�\u001e:fm\u000e�\u000b��`\u0001X\b\u0016��`\tX\n���`\u0005X\tV��`\u0006�\u0001k�:�\u001el\u0000\u001b�&�-���c�CǬ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012�w�{蘵9`.�\u0007�\u0005`!X\u0004\u0016�%`)X\u0006��\u0015`%X\u0005V�\u0019�\u0006�\u0005��z�\u0001l\u0004��H���y\u000f\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1�c�怹`\u001e�\u000f\u0016��`\u0011X\f���`\u0019X\u000eV��`\u0015X\rf�\u001a�\u0016�\u0003��\u0006�\u0011l��\"\t�;�=t��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv�'�t}�|\n\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1�BǬ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012�w̧�1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d�)t��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$a}�|\n\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1�BǬ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012�w̧�1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d�)t��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$a}�|\n\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1�BǬ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�y\u0012��w�g�1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d�\u0019t��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$a}�|\u0006\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1�AǬ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012�w�g�1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d�\u0019t��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$a}�|\u0006\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1�AǬ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012�w�g�1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d�\u0019t��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv�'�|}�|\u000e\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1�CǬ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012�w���1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d�9t��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$a}�|\u000e\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1�CǬ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�E\u0012�w���1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6�m���\u001d�9t��\u001c0\u0017�\u0003��\u0002�\u0010,\u0002��\u0012�\u0014,\u0003��\n�\u0012�\u0002��\fX\u0003ւu`=�\u00006�Mv[$a}�|\u000e\u001d�6\u0007�\u0005��|�\u0000,\u0004��b�\u0004,\u0005��r�\u0002�\u0004��j0\u0003ր�`\u001dX\u000f6��`��\u0016IX�1�CǬ�\u0001s�<0\u001f,\u0000\u000b�\"�\u0018,\u0001K�2�\u001c�\u0000+�*�\u001à5`-X\u0007փ\r`#�d�y\u0012.�w�\u0017�1ks�\\0\u000f�\u0007\u000b�B�\b,\u0006K�R�\f,\u0007+�J�\n�\u00063`\rX\u000bց�`\u0003�\b6��1\t?����ν��z�����wŗ�\u000f7���������Ͽ}}s���ǯ�'/~���>�����\u0011s�\u0014�\u0017���~�ϛ�wW\u001f���w׷��-������/������_���/W�]gW��}������_�ޜ�zy~q\u001f���d>����˛���W���o�wq��\u001f7ww7�lr����}��כ���~}?��\u001f\u00071�w|y���������oN�r������ի�\u0017�~��zW^�v����\u001f�{m�?v���\u001f�����˧�*��\u0017��\u0016�\u000f�����s�������ۓ\u00177�\u001f�?�]�?\foN�����^}�;y������\u0001��u��������\u001f\u001f�~�����������������\u000e�����G��ӧ���������Ö�r��\u0017������������{��/7_>ܟ���c��0�}��\u0000�\u000f\u000f��\u001f~�������å��{�p��������sp��}�����q����r\u001e�����w���|�t��E~�׋���������폏W�\u000f��j�}��{���&��=���g�������\u000f�\u001evz����Ƿ������\u001fB���\u000b\u0000\u0000��PK\u0007\b�����E\u0000\u0000|l\u0003\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000xl/worksheets/sheet5.xml�VMo�6\u0013�����\u000b쩵,$�]I��i�\u0005��\u0011g�@o�8���\u001c���$�� �\u0019'�ݠ��\u0007Y�\u0019>\u000f�\fř�Ӄ��\u0000�\n�)�'SJ@�ȅާ�����g�S���Fso\u000b\u0000G\u001e��6��s�(�y\u0001��\t��\u001f�ܡQ��\t�}dK\u0003��IJF���$RLh�%��6d'�\u0003�\u00059�tǤ\u0005�%%��\u0006��2��\u001d��~�F�,�Z�,�B��{ \u0006v)=�?\\�>����\b����Bs��\u0006\u001d�.h�P\u0011[`}�FU��g�ߌ�WB�M�3Uk��z��30\u000e��O0�\u001b��\u0017�\u000e�`�zHǶ\u001b��;��hn*'��ͣڢ�\u00118�X%�_�\n%��~\u0010P�T{�%%\u000eKϱ\u0002)�\u0016��>�w�ғ\u0005%O�j�3\t)�����:L?��\u0004\\�G��`�ן�-�7yܩOk؆�A�4��]\u0005%,w�\u0000�j�q3�ؿڬ���0]~=�����e8lkӉr��g�\n�4�MΖ���\u0005fI�҆�WD�ҎD/\u0004�0�_����)Q�\u0017�X�\u0018\u0014��\u0016�\u0015��dNI^Y��[c\u000b�Ȓ(G�ߥY�4�Whf�I�F4���z����w �Z�ٛ!v���\f�?��\u000f��\u0017�\u000f�񨹆��t�\u001c�\u0012�51\u0001#�^���\u0003讴\u0016!�q�\u0012�)]Ĕ��Z�%�l~�H��\u0007o�~i�f���Q�ꕘӓ�1\u0017m�|\u0014\u0013/�}Pd����ݔFhwS�;ܒ\u0002�o&�\u001a�\u001f��e\u0003�FI�F<�vL�@;0�|\u001c�8��t��`���\u0012_��\u000bm�\f5w:9=�ҚF�n�\f��rv���(٢s�^�\u0014��\u000f\u0000;D7\u001a�}J��75UIJV�و'H�{J�\n����Jm�9\f�\u0001jOP7�K\u001c%\u001e�Ƅ�p��]\u0001��\u0000�\u00124\u0002�cM?S�q�\tGIea�\u0005\u0002s�T�!\u0005[���sͿ\u0015���\u0016ᆍ:�\u001c�\\�R��D�\u001a\u0002���\u0013xQ����\u001e��\r�\u001cK�OB<���2K\u001a�/�����\u000e\fh\u0017���u�\u001b�=\f_h� �M+��c���\n�w��/>�\t\u0005�\\CMnQ1��-�+�L���x\u0016�Γh\u0000�x�R�\u0007�KC��:��HI4�c�D}���\u001d\u0000\u0000��PK\u0007\b}\n�2�\u0003\u0000\u0000�\u000b\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0013\u0000\u0000\u0000xl/theme/theme1.xml�ZOoܸ\u0015��S\u0010�'��\u0019\u001bV\u0016��g�&�5lo�=��8\u0012c�\u0014H���\u0015�c�\u0002E�E/\u0005z�h\u001b`\u0017�%�4i�h�@�BAi,�\u0012��\u001d�כ�}H�'�~�/�#����*f�HE\u0005�p�Q\u001b#�}\u0011P\u001ez�����!FJ\u0003\u000f�\tN<� \n���>���\u0004]Ō�=�p�u��j)?\"1�G\"!�*f3!c�ꑐa+�pIy\u0018�V���i�@9F\u001cb��Og3꓇\u0007Dѐ�'\u000f\u0010�Vp�HL�VF�J}&O�Tu\u0011�����s��>��\u001a3�.�y���@\\��+�\u0011\u0003��Lz����V�ѲH�a��U�\u0005�I�g�\u0015\bR\u000b�6�\f�9_g��}|P��kY�\u0000?<<\u001c\u001fv�ڋp�}��\u000e\u0015)��agT��\u0004�i\u001a,\u0019�\u0007����jM��fw4\u001a\rv]4�\nM��f���?��h�\u0015�AClFO��\u001d\u0017͠B�SO3y���w��\u0014h\"F�y=���r�Y�}؛\t���e�n����QF�o��Ȭ�z�N�ᕐ\u0013������\u001c�EBf�\u0013\u000f�!�J\n7\u0016��\b\u0014�������1\u000b)_�D{��\tp\\X���߿�\n�����߽�ۻ/�x���M\fπ�E�o��������?_���/�\u0002�����\u0017����W t\u0011��o����7�����ӗM��\u0012�E�\u0019��B��Kt\"b��*�Tn\b=��ZP�D\\N��8ԑ��d\u0001�\u00110\"v�_JʃF���W�?���kڄx\u001e�\u0016�H\b6\u0012����ƌ��s\u001e��K΋�\u0013��F�ƥ�9�'\u0011�+���D�r�\u0001�\u0010\u0012N42��9!M��)��sD})��i�9E#�́<�S�F?�10X4�~\u0016�\u0015ѣ�h$X��\u0003raC���\u001a�\u0010fe�c�k�����\u0015!/@G���.�o%Ni\t<$L�À(�\b�T.,��\u0003�+*�-b\u001b\"5=o��\u0000!��\u0003q>� N���<*�~�΅`���n�O�{�<\u000bF�������\r��g4���h��e�^%��!\u000b6\u0003RPg�ae��iG�\u001a��*��u��:W4\u001b'�J���\\;�9?&<j�܏�j9܏����o{cmeG��af\u000f��\u0002x}�[�`o\u0016����(c�z��\u000be�@%\u0018\r&��\u001bi&O��h\u0012���Mˉ݇�PB*DR�Q\u001d�F�\u0010\u000fwpIC�,[r)J��p\u001bۯ�*�KWj�u�h`@��@\u001f� [�k�\u0017��^�-��2�ֺ�3���F��]���\u0018��Gg��\u001f5y�N~d�R���\u001f�\bx���N7�\u000e)\u001f\u0018\tL�������5ީIzF\u0018A@�YW�~�����b\u00155n�\r���jk�����;z���Ά�8����;�ȇ��3\u0006\u001a#?N\u0002\u000f+3\u001a���þ��ju΂�sd�~׽�˅�v-�\r{��Ii\u0013��\u0001�(#NW��˸#T�Aߤ�vcպm/z�·�E��p2�\u0011_;���:{�j�b��<��K4esy\u0002����v\f��\u001e�^?H\u000f\u000f�˝j7xw\u0003+�w��t!�$�e�\u0019������#r��Yp�|#.��b��\u001ecW�Y�cw��[�\u000e�I/�\u0004�H@�9xXH\u001d�PB\u0012Q\"\u0005�.\u0017�Ј�6\u0001@L��I.J�\u0013-���+j\u0019\r#}BC$i�a\u001dIB��2��Mk��<P�\rl��\u001c#G,L�\u0012Gx�䂰3��wL�0���S��Z���-���:\r'?�+a��<\u0015Z.��y\b�7]�\n\u0007�ݻ�v\u001bg��#�5��\u001d44�u\u001dٯ9�'�#d��O��\b��o��g��\u001a�W\u0015�=�p�l��p��ΰ��mT�[�C��:������(�Z���Zk�p�\u0016jm�(5��^�Ҍ�5/�<��hDFP�i�9\u0001M_\u0011_\u001f�\u0019�Y��b*9 �\\�y>����T\u0004\u000b[�T6ˊ2U9�1~Bf�\u0006W��P���o�����\u001b��@笽�X�\u001c\u0016o6�s��f�9�m��7���\u0015��as�Q,�B���H��4����\rc�\"���X���5����\rr�g�<Tw���JK\u0018_���ҭ'\u000f����\u0001\u0000\u0000��PK\u0007\b�h��\u0006\u0000\u0000�*\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u000f\u0000\u0000\u0000xl/workbook.xml��Oo�<\f���\u0010xzwXl�i�\u0016��m��\u0000�S,Yګ\"ѱVI4$�I��\u0007;��\u0000ݐ�MR���C�7[��3�d)H(F9\b\f��\r+\t?�\u001f�^�M�_����$z\u0012[�B��0��Y�t�^�\u0011�\u0018���\u0014��4���R\u001bQ�� �w�8�/2�l�\u001d�:� ��\u001aoI�=\u0006�A\":ŖBjl��*k�p��_����<J�D����\u0011�2\u001bԫ?2�H\rm�-��$A9\u0007�(��*�H��K�5\u001f�\u000f{�Qs��^Kv���&\u001dz�����E����H�I�F�k\u000b�l�k�Y��\\-�>�j��sA�8����`hs�vհ���j��=XÍ����r\u0002b��'%� ^\u000e�\u0003\u001dݠU�\r$�\u001b�E�흭�W�\u001b\u000e��FB\u0001\"^[#!NM\u0001\"�b��l�]�����1�r*h\u0014w61\u001d��\u0003��DڜZ1�*$կ!\rpg\u0003�ى�w��\r7\u0019�&'�A�G�?9�f�:\u001f������[0Xۀ�{�*��P+��Q1~�u`\tE���X!��*`_�E�JB>��j�=x\u000b��\u0000\u0000\u0000��PK\u0007\b�\f���\u0001\u0000\u0000\u001d\u0004\u0000\u0000PK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000����&C\u0000\u0000�[\u0003\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000xl/worksheets/sheet1.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000tWx,�U\u0000\u0000�\u0019\u0004\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000lC\u0000\u0000xl/worksheets/sheet4.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�Ξ��\u0000\u0000\u0000D\u0002\u0000\u0000\u000b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00002�\u0000\u0000_rels/.relsPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000_��UX\n\u0000\u0000�-\u0000\u0000\u0014\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000Q�\u0000\u0000xl/sharedStrings.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�{�\u0001\u0001\u0000\u0000L\u0005\u0000\u0000\u001a\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�\u0000\u0000xl/_rels/workbook.xml.relsPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�\u0000C5u\u0001\u0000\u0000\u0015\b\u0000\u0000\u0013\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00004�\u0000\u0000[Content_Types].xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000f��q�\u0000\u0000\u00004\u0001\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�\u0000\u0000docProps/app.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000;�|\u001a�\u0000\u0000\u0000l\u0001\u0000\u0000\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000��\u0000\u0000docProps/core.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000��1�\u001d\u0004\u0000\u0000�9\u0000\u0000\r\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004�\u0000\u0000xl/styles.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000\rV�zC\t\u0000\u0000O,\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\\�\u0000\u0000xl/worksheets/sheet2.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�����E\u0000\u0000|l\u0003\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�\u0000\u0000xl/worksheets/sheet3.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000}\n�2�\u0003\u0000\u0000�\u000b\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000��\u0000\u0000xl/worksheets/sheet5.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�h��\u0006\u0000\u0000�*\u0000\u0000\u0013\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�\u0001\u0001\u0000xl/theme/theme1.xmlPK\u0001\u0002\u0014\u0000\u0014\u0000\b\u0000\b\u0000\u0000\u0000\u0000\u0000�\f���\u0001\u0000\u0000\u001d\u0004\u0000\u0000\u000f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�\b\u0001\u0000xl/workbook.xmlPK\u0005\u0006\u0000\u0000\u0000\u0000\u000e\u0000\u000e\u0000�\u0003\u0000\u0000\u0011\u000b\u0001\u0000\u0000\u0000"}],"_postman_id":"3abb32b7-dab6-442c-9ca6-8be9f7376f87"}],"id":"5921a29b-032d-49cd-ae1b-efd4c6300a60","description":"<p><strong>Product description:</strong> a <code>Composite Statement</code> is a Finverse-generated Excel spreadsheet containing all data available for a Login Identity. This allows a human reviewer to easily examine Account, Transaction and other data for a Login Identity.</p>\n","_postman_id":"5921a29b-032d-49cd-ae1b-efd4c6300a60"},{"name":"11 - Card Details","item":[{"name":"/card_details","event":[{"listen":"test","script":{"id":"a2c07bf6-dae1-4f6b-85c3-bf590d5498a1","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.transactions) {","    console.log(\"Number of card accounts with card details:\", jsonData.card_details.card_accounts.length);","};","","","//STANDARD TESTS - START","//HTTP response status","if (pm.environment.get(\"is_card_details_enabled\") === \"true\") {","    pm.test(\"Status code is 200\", function () {","        pm.response.to.have.status(200);","    });","};","","//Received Card Details or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"card_details\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"card_details\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"card_accounts\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"account_id\": {\"type\": \"string\"},","                                \"account_name\": {\"type\":\"string\"},","                                \"account_number_masked\": {\"type\":\"string\"},","                                \"account_type\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"subtype\": {\"type\":\"string\"},","                                        \"type\": {\"type\":\"string\"}","                                    },","                                    \"required\": [","                                        \"subtype\",","                                        \"type\"","                                    ]","                                },","                                \"available_credit_limit\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"currency\": {\"type\":\"string\"},","                                        \"raw\": {\"type\":\"string\"},","                                        \"value\": {\"type\":\"number\"}","                                    },","                                    \"required\": [","                                        \"currency\",","                                        \"raw\",","                                        \"value\"","                                    ]","                                },","                                \"current_balance\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"currency\": {\"type\":\"string\"},","                                        \"raw\": {\"type\":\"string\"},","                                        \"value\": {\"type\":\"number\"}","                                    },","                                    \"required\": [","                                        \"currency\",","                                        \"raw\",","                                        \"value\"","                                    ]","                                },","                                \"last_payment_amount\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"currency\": {\"type\":\"string\"},","                                        \"raw\": {\"type\":\"string\"},","                                        \"value\": {\"type\":\"number\"}","                                    },","                                    \"required\": [","                                        \"currency\",","                                        \"raw\",","                                        \"value\"","                                    ]","                                },","                                \"last_payment_date\": {\"type\":\"string\"},","                                \"next_payment_due_date\": {\"type\":\"string\"},","                                \"minimum_payment_due\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"currency\": {\"type\":\"string\"},","                                        \"raw\": {\"type\":\"string\"},","                                        \"value\": {\"type\":\"number\"}","                                    },","                                    \"required\": [","                                        \"currency\",","                                        \"raw\",","                                        \"value\"","                                    ]","                                },    ","                                \"payment_due_amount\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"currency\": {\"type\":\"string\"},","                                        \"raw\": {\"type\":\"string\"},","                                        \"value\": {\"type\":\"number\"}","                                    },","                                    \"required\": [","                                        \"currency\",","                                        \"raw\",","                                        \"value\"","                                    ]","                                },","                                \"rewards_balances\": {","                                    \"type\":\"array\",","                                    \"items\": {","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"raw\": {\"type\":\"string\"},","                                            \"unit\": {\"type\":\"string\"},","                                            \"value\": {\"type\":\"number\"}","                                        },","                                        \"required\": [","                                            \"raw\",","                                            \"unit\",","                                            \"value\"","                                        ]","                                    },                             ","                                },                   ","                                \"statement_due_amount\": {","                                    \"type\":\"object\",                    ","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"currency\": {\"type\":\"string\"},","                                        \"raw\": {\"type\":\"string\"},","                                        \"value\": {\"type\":\"number\"},","                                    },","                                    \"required\": [","                                        \"currency\",","                                        \"raw\",","                                        \"value\"","                                    ]","                                },","                                \"total_credit_limit\": {","                                    \"type\":\"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"currency\": {\"type\":\"string\"},","                                        \"raw\": {\"type\":\"string\"},","                                        \"value\": {\"type\":\"number\"}","                                    },","                                    \"required\": [","                                        \"currency\",","                                        \"raw\",","                                        \"value\"","                                    ]","                                },","                                \"statement_date\": {\"type\":\"string\"},","                                \"statement_payment_due_date\": {\"type\":\"string\"},","                                \"updated_at\": {\"type\":\"string\"}","                            },","                            \"required\": [","                                \"account_id\",","                                \"account_name\",","                                \"account_number_masked\",","                                \"account_type\",","                                \"current_balance\",","                                \"updated_at\"","                            ]","                        }","                    },","                    \"card_total\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"available_credit_limit\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"currency\": {\"type\":\"string\"},","                                    \"raw\": {\"type\":\"string\"},","                                    \"value\": {\"type\":\"number\"}","                                },","                                \"required\": [","                                    \"currency\",","                                    \"raw\",","                                    \"value\"","                                ]","                            },","                            \"current_balance\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"currency\": {\"type\":\"string\"},","                                    \"raw\": {\"type\":\"string\"},","                                    \"value\": {\"type\":\"number\"}","                                },","                                \"required\": [","                                    \"currency\",","                                    \"raw\",","                                    \"value\"","                                ]","                            },","                            \"last_payment_amount\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"currency\": {\"type\":\"string\"},","                                    \"raw\": {\"type\":\"string\"},","                                    \"value\": {\"type\":\"number\"}","                                },","                                \"required\": [","                                    \"currency\",","                                    \"raw\",","                                    \"value\"","                                ]","                            },","                            \"last_payment_date\": {\"type\":\"string\"},","                            \"next_payment_due_date\": {\"type\":\"string\"},","                            \"minimum_payment_due\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"currency\": {\"type\":\"string\"},","                                    \"raw\": {\"type\":\"string\"},","                                    \"value\": {\"type\":\"number\"}","                                },","                                \"required\": [","                                    \"currency\",","                                    \"raw\",","                                    \"value\"","                                ]","                            },    ","                            \"payment_due_amount\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"currency\": {\"type\":\"string\"},","                                    \"raw\": {\"type\":\"string\"},","                                    \"value\": {\"type\":\"number\"}","                                },","                                \"required\": [","                                    \"currency\",","                                    \"raw\",","                                    \"value\"","                                ]","                            },","                            \"rewards_balances\": {","                                \"type\":\"array\",","                                \"items\": {","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"raw\": {\"type\":\"string\"},","                                        \"unit\": {\"type\":\"string\"},","                                        \"value\": {\"type\":\"number\"}","                                    },","                                    \"required\": [","                                        \"raw\",","                                        \"unit\",","                                        \"value\"","                                    ]","                                },                             ","                            },                  ","                            \"statement_due_amount\": {","                                \"type\":\"object\",                    ","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"currency\": {\"type\":\"string\"},","                                    \"raw\": {\"type\":\"string\"},","                                    \"value\": {\"type\":\"number\"},","                                },","                                \"required\": [","                                    \"currency\",","                                    \"raw\",","                                    \"value\"","                                ]","                            },","                            \"total_credit_limit\": {","                                \"type\":\"object\",","                                \"additionalProperties\": false,","                                \"properties\": {","                                    \"currency\": {\"type\":\"string\"},","                                    \"raw\": {\"type\":\"string\"},","                                    \"value\": {\"type\":\"number\"}","                                },","                                \"required\": [","                                    \"currency\",","                                    \"raw\",","                                    \"value\"","                                ]","                            },","                            \"statement_date\": {\"type\":\"string\"},","                            \"statement_payment_due_date\": {\"type\":\"string\"},","                            \"updated_at\": {\"type\":\"string\"}","                        },","                        \"required\": [","                            \"updated_at\"","                        ]","                    }","                },","                \"required\" : [","                    \"card_accounts\",","                    \"card_total\"","                ]","            },","            \"institution\": {\"type\":\"object\"},","            \"login_identity\": {\"type\":\"object\"}","        },","        \"required\": [","            \"institution\",","            \"login_identity\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","","//ADDITIONAL DATA RETRIEVAL TESTS - START","if (pm.environment.get(\"is_card_details_enabled\") === \"true\") {","","    if (pm.environment.get(\"run_data_retrieval_tests\") === \"true\") {","","        pm.test(\"At least 1 card account with card details found\", function() {","            pm.expect(jsonData.card_details.card_accounts.length).to.be.at.least(1)","        });","","    };","","};","//ADDITIONAL DATA RETRIEVAL TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"72d3f569-1ead-4e73-82ea-1c413040df19","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"https://api.prod.finverse.net/card_details","description":"<p>Retrieve all Card Details under a Login Identity (using a specific <code>login_identity_token</code>).</p>\n<p><strong>Authorization</strong>: <code>login_identity_token</code></p>\n<h2 id=\"response-fields\">Response fields</h2>\n<h3 id=\"card_details-object\">card_details (object)</h3>\n<p>Card details, split into (i) account-level, and (ii) aggregated across all card accounts.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>card_accounts</td>\n<td>array of objects</td>\n<td>Full card_accounts array, containing a list of card accounts with account-level balances, card payment details &amp; metadata. See below.</td>\n</tr>\n<tr>\n<td>card_total</td>\n<td>object</td>\n<td>Total card balances, payment details &amp; metadata, when reported by the institution at an aggregate-level (instead of at card_account level). Finverse does not compute these values if not reported by the institution. See below.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"card_accounts-array-of-objects\">card_accounts (array of objects)</h3>\n<p>Full <code>card_accounts</code> array, containing a list of card accounts with account-level balances, card payment details &amp; metadata.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>account_id</td>\n<td>string (ULID)</td>\n<td>Finverse account ID. Matches value in <code>GET /accounts</code></td>\n</tr>\n<tr>\n<td>account_name</td>\n<td>string</td>\n<td>End-user recognizable name for the account. Matches value in <code>GET /accounts</code></td>\n</tr>\n<tr>\n<td>account_number_masked</td>\n<td>string, optional</td>\n<td>Masked account number. Format: preserves original length; shows first 0-4 digits + last 2-4 digits in plain text (depending on original length); omits spaces/symbols. Matches value in <code>GET /accounts</code></td>\n</tr>\n<tr>\n<td>account_type</td>\n<td>object</td>\n<td><strong>Beta</strong>: account type object. See <code>GET /accounts</code></td>\n</tr>\n<tr>\n<td>available_credit_limit</td>\n<td>currency object (see below), optional</td>\n<td>Available credit limit (i.e. <code>total_credit_limit</code> minus <code>current_balance</code>)</td>\n</tr>\n<tr>\n<td>current_balance</td>\n<td>currency object (see below)</td>\n<td>Current outstanding balance.  <br />  <br />Matches <code>balance</code> value in <code>GET /accounts</code></td>\n</tr>\n<tr>\n<td>last_payment_amount</td>\n<td>currency object (see below), optional</td>\n<td>Amount of last repayment made on the card</td>\n</tr>\n<tr>\n<td>last_payment_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>Date of last repayment made on the card</td>\n</tr>\n<tr>\n<td>next_payment_due_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>Date of next repayment due on the card (this will be estimated based on <code>statement_payment_due_date</code> if the payment due date of the last available statement is in the past)</td>\n</tr>\n<tr>\n<td>minimum_payment_due</td>\n<td>currency object (see below), optional</td>\n<td>Amount of minimum repayment due on the card (this may show 0 after a payment has been made)</td>\n</tr>\n<tr>\n<td>payment_due_amount</td>\n<td>currency object (see below), optional</td>\n<td>Amount of repayment currently due on the card (typically this is the amount to pay the full balance on the last available statement, and may show 0 after a payment has been made)</td>\n</tr>\n<tr>\n<td>rewards_balances</td>\n<td>array of amount objects (see below), optional</td>\n<td>Available rewards balances on the card. The array can include multiple objects (e.g. one for rewards points, and one for cashback rewards).</td>\n</tr>\n<tr>\n<td>statement_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>Date of the last available statement</td>\n</tr>\n<tr>\n<td>statement_due_amount</td>\n<td>currency object (see below), optional</td>\n<td>Amount of repayment due according to the last available statement  <br />  <br />(note: this will not change after a payment is made, only when a new statement becomes available)</td>\n</tr>\n<tr>\n<td>statement_payment_due_date</td>\n<td>string (ISO 8601 date: YYYY-MM-DD), optional</td>\n<td>Date of next repayment due on the card, according to the last available statement  <br />  <br />(note: this will not change after a payment is made, only when a new statement becomes available)</td>\n</tr>\n<tr>\n<td>total_credit_limit</td>\n<td>currency object (see below), optional</td>\n<td>Total credit limit available for the card</td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last update to the card account's record</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"currency-object-object\">currency object (object)</h4>\n<p>Details of any currency amount (e.g. payment or balance amount).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>currency</td>\n<td>string (ISO 4217 currency: 3-letter alphabetic code), optional</td>\n<td>Currency of the <code>value</code>. Usually available, but may be null if value is 0</td>\n</tr>\n<tr>\n<td>raw</td>\n<td>string, optional</td>\n<td>Raw amount (as reported by the institution). Usually available, but may be null if value is 0. Intended for QA only</td>\n</tr>\n<tr>\n<td>value</td>\n<td>number</td>\n<td>Amount. Sign follows financial statement conventions (positive sign: assets / money in; negative sign: liabilities / money out)</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"amount-object-object\">amount object (object)</h4>\n<p>Details of any non-currency amount (e.g. reward amount).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>raw</td>\n<td>string, optional</td>\n<td>Raw amount (as reported by the institution). Usually available, but may be null if value is 0. Intended for QA only.</td>\n</tr>\n<tr>\n<td>unit</td>\n<td>string, optional</td>\n<td>Unit of the value amount. Usually available, but may be null if value is 0.  <br />  <br />Common units: (i) ISO-currency codes (e.g. \"SGD\"), (ii) \"Points\" for generic points programs, (iii) Bank-specific units (e.g. \"TB$\").</td>\n</tr>\n<tr>\n<td>value</td>\n<td>number</td>\n<td>Amount</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"card_totals-object\">card_totals (object)</h3>\n<p>Total card balances, payment details &amp; metadata, when reported by the institution at an aggregate-level (instead of at <code>card_account</code> level). Finverse does not compute these values if not reported by the institution..</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>available_credit_limit</td>\n<td>currency object (see above), optional</td>\n<td>Available credit limit across all cards (i.e. <code>total_credit_limit</code> minus <code>current_balance</code>)</td>\n</tr>\n<tr>\n<td>current_balance</td>\n<td>currency object (see above), optional</td>\n<td>Current outstanding balance across all cards</td>\n</tr>\n<tr>\n<td>minimum_payment_due</td>\n<td>currency object (see above), optional</td>\n<td>Amount of minimum repayment due across all cards (may show 0 after a payment has been made)</td>\n</tr>\n<tr>\n<td>payment_due_amount</td>\n<td>currency object (see above), optional</td>\n<td>Amount of repayment currently due across all cards (may show 0 after a payment has been made)</td>\n</tr>\n<tr>\n<td>rewards_balances</td>\n<td>array of amount objects (see above), optional</td>\n<td>Available rewards balances across all cards. The array can include multiple objects (e.g. one for rewards points, and one for cashback rewards).</td>\n</tr>\n<tr>\n<td>total_credit_limit</td>\n<td>currency object (see above), optional</td>\n<td>Total credit limit available across all cards</td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last update to the record</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"institution-object\">institution (object)</h3>\n<p>Summary Institutions object. See <code>GET /institutions</code> for details.</p>\n<h3 id=\"login_identity-object\">login_identity (object)</h3>\n<p>Summary Login Identity object. See <code>GET /login_identity</code> for details.</p>\n","urlObject":{"path":["card_details"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"75151633-b234-49ab-90b6-6ed709e5132a","name":"Success","originalRequest":{"method":"GET","header":[],"url":"https://api.prod.finverse.net/card_details"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"01HCMFWNDG0PSCG3MQZE2AFSMP"},{"key":"Date","value":"Fri, 13 Oct 2023 12:23:58 GMT"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"},{"key":"Transfer-Encoding","value":"chunked"}],"cookie":[],"responseTime":null,"body":"{\n    \"card_details\": {\n        \"card_accounts\": [\n            {\n                \"account_id\": \"01HCMFSKAFT37ESRFTHNJK3CTZ\",\n                \"account_name\": \"American Express Platinum\",\n                \"account_number_masked\": \"378XXXXXXXX0005\",\n                \"account_type\": {\n                    \"subtype\": \"CREDIT_CARD\",\n                    \"type\": \"CARD\"\n                },\n                \"available_credit_limit\": {\n                    \"currency\": \"SGD\",\n                    \"raw\": \"19045.31\",\n                    \"value\": 19045.31\n                },\n                \"current_balance\": {\n                    \"currency\": \"SGD\",\n                    \"raw\": \"-954.69\",\n                    \"value\": -954.69\n                },\n                \"last_payment_amount\": {\n                    \"currency\": \"SGD\",\n                    \"raw\": \"100.00\",\n                    \"value\": 100\n                },\n                \"last_payment_date\": \"2023-07-15\",\n                \"minimum_payment_due\": {\n                    \"currency\": \"SGD\",\n                    \"raw\": \"120.00\",\n                    \"value\": 120\n                },\n                \"next_payment_due_date\": \"2023-08-05\",\n                \"payment_due_amount\": {\n                    \"currency\": \"SGD\",\n                    \"raw\": \"420.43\",\n                    \"value\": 420.43\n                },\n                \"rewards_balances\": [\n                    {\n                        \"raw\": \"572489\",\n                        \"unit\": \"TB$\",\n                        \"value\": 572489\n                    }\n                ],\n                \"statement_date\": \"2023-08-05\",\n                \"statement_due_amount\": {\n                    \"currency\": \"SGD\",\n                    \"raw\": \"520.43\",\n                    \"value\": 520.43\n                },\n                \"statement_payment_due_date\": \"2023-08-05\",\n                \"total_credit_limit\": {\n                    \"currency\": \"SGD\",\n                    \"raw\": \"20000.00\",\n                    \"value\": 20000\n                },\n                \"updated_at\": \"2023-10-13T12:22:40.602Z\"\n            },\n            {\n                \"account_id\": \"01HCMFSKAM6G4J525H6H19S3W1\",\n                \"account_name\": \"HKD Credit Card\",\n                \"account_number_masked\": \"1234XXXXXXXX0000\",\n                \"account_type\": {\n                    \"subtype\": \"CREDIT_CARD\",\n                    \"type\": \"CARD\"\n                },\n                \"available_credit_limit\": {\n                    \"currency\": \"HKD\",\n                    \"raw\": \"8166.78\",\n                    \"value\": 8166.78\n                },\n                \"current_balance\": {\n                    \"currency\": \"HKD\",\n                    \"raw\": \"-1833.22\",\n                    \"value\": -1833.22\n                },\n                \"last_payment_amount\": {\n                    \"currency\": \"HKD\",\n                    \"raw\": \"1220.00\",\n                    \"value\": 1220\n                },\n                \"last_payment_date\": \"2023-07-19\",\n                \"minimum_payment_due\": {\n                    \"currency\": \"HKD\",\n                    \"raw\": \"120.00\",\n                    \"value\": 120\n                },\n                \"next_payment_due_date\": \"2023-08-11\",\n                \"payment_due_amount\": {\n                    \"currency\": \"HKD\",\n                    \"raw\": \"0.00\",\n                    \"value\": 0\n                },\n                \"rewards_balances\": [\n                    {\n                        \"raw\": \"3895\",\n                        \"unit\": \"TB$\",\n                        \"value\": 3895\n                    }\n                ],\n                \"statement_date\": \"2023-08-11\",\n                \"statement_due_amount\": {\n                    \"currency\": \"HKD\",\n                    \"raw\": \"1220.00\",\n                    \"value\": 1220\n                },\n                \"statement_payment_due_date\": \"2023-08-11\",\n                \"total_credit_limit\": {\n                    \"currency\": \"HKD\",\n                    \"raw\": \"10000.00\",\n                    \"value\": 10000\n                },\n                \"updated_at\": \"2023-10-13T12:22:40.602Z\"\n            },\n            {\n                \"account_id\": \"01HCMFSKASNNFP3XJYCFJF60F8\",\n                \"account_name\": \"UOB Visa\",\n                \"account_number_masked\": \"4242XXXXXXXX4242\",\n                \"account_type\": {\n                    \"subtype\": \"CREDIT_CARD\",\n                    \"type\": \"CARD\"\n                },\n                \"available_credit_limit\": {\n                    \"currency\": \"SGD\",\n                    \"raw\": \"98543.10\",\n                    \"value\": 98543.1\n                },\n                \"current_balance\": {\n                    \"currency\": \"SGD\",\n                    \"raw\": \"-1456.90\",\n                    \"value\": -1456.9\n                },\n                \"last_payment_amount\": {\n                    \"currency\": \"SGD\",\n                    \"raw\": \"1220.00\",\n                    \"value\": 1220\n                },\n                \"last_payment_date\": \"2023-07-25\",\n                \"minimum_payment_due\": {\n                    \"currency\": \"SGD\",\n                    \"raw\": \"220.00\",\n                    \"value\": 220\n                },\n                \"next_payment_due_date\": \"2023-08-15\",\n                \"payment_due_amount\": {\n                    \"currency\": \"SGD\",\n                    \"raw\": \"0.00\",\n                    \"value\": 0\n                },\n                \"rewards_balances\": [\n                    {\n                        \"raw\": \"123\",\n                        \"unit\": \"TB$\",\n                        \"value\": 123\n                    }\n                ],\n                \"statement_date\": \"2023-08-15\",\n                \"statement_due_amount\": {\n                    \"currency\": \"SGD\",\n                    \"raw\": \"1220.00\",\n                    \"value\": 1220\n                },\n                \"statement_payment_due_date\": \"2023-08-15\",\n                \"total_credit_limit\": {\n                    \"currency\": \"SGD\",\n                    \"raw\": \"100000.00\",\n                    \"value\": 100000\n                },\n                \"updated_at\": \"2023-10-13T12:22:40.602Z\"\n            }\n        ],\n        \"card_total\": {\n            \"available_credit_limit\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"125755.19189453125\",\n                \"value\": 125755.191\n            },\n            \"current_balance\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"-4244.809997558594\",\n                \"value\": -4244.81\n            },\n            \"minimum_payment_due\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"460\",\n                \"value\": 460\n            },\n            \"payment_due_amount\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"420.42999267578125\",\n                \"value\": 420.43\n            },\n            \"rewards_balances\": [],\n            \"statement_due_amount\": {\n                \"currency\": \"HKD\",\n                \"raw\": \"2960.4299926757812\",\n                \"value\": 2960.43\n            },\n            \"updated_at\": \"2023-10-13T12:22:40.602Z\"\n        }\n    },\n    \"institution\": {\n        \"countries\": [\n            \"HKG\",\n            \"IDN\",\n            \"MYS\",\n            \"PHL\",\n            \"SGP\",\n            \"THA\",\n            \"VNM\"\n        ],\n        \"institution_id\": \"testbank\",\n        \"institution_name\": \"Testbank\",\n        \"portal_name\": \"Testbank Online Banking\"\n    },\n    \"login_identity\": {\n        \"last_session_id\": \"01HCMFRWSNHSCE28DZC1ST6XFT\",\n        \"login_identity_id\": \"01HCMFRWR208N4NM9M8WYC7JEG\",\n        \"status\": \"DATA_RETRIEVAL_COMPLETE\"\n    }\n}"}],"_postman_id":"72d3f569-1ead-4e73-82ea-1c413040df19"}],"id":"755d85ef-3c56-413b-9c83-a474426765c5","description":"<p>Note: <code>GET</code> data requests read <em>previously retrieved</em> data from Finverse's database. To request Finverse to retrieve new data from connected institutions, please use the <code>POST</code> requests under \"<strong>Data Refresh</strong>\".</p>\n<p>See \"<em>Guidance: When to fetch data from Finverse</em>\" under <strong>04 - Login Identity</strong> for details on when data is available for fetching.</p>\n","_postman_id":"755d85ef-3c56-413b-9c83-a474426765c5"},{"name":"12 - Manage Login Identity","item":[{"name":"/auth/token/refresh (Refresh login_identity_token)","event":[{"listen":"test","script":{"id":"86070843-7bfc-4355-b03e-4e6a8a07003f","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if (jsonData.access_token != null) {","  pm.environment.set(\"login_identity_token\", jsonData.access_token);","}","","if (jsonData.refresh_token != null) {","  pm.environment.set(\"login_identity_refresh_token\", jsonData.refresh_token);","}","","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Access Token or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"access_token\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"access_token\": {\"type\":\"string\"},","            \"expires_in\": {\"type\":\"integer\"},","            \"issued_at\": {\"type\":[\"string\", \"null\", \"integer\"]}, // TO BE CHANGED TO STRING ONLY","            \"login_identity_id\": {\"type\":\"string\"},","            \"refresh_token\": {\"type\":\"string\"},","            \"token_type\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"access_token\",","            \"expires_in\",","            \"issued_at\",","            \"login_identity_id\",","            \"refresh_token\",","            \"token_type\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","//POSTMAN COLLECTION ROUTING LOGIC","    pm.execution.setNextRequest(\"login_identity/refresh (User-present data refresh)\")","    console.log(\"Next request: Login Identity refresh\")","//POSTMAN COLLECTION ROUTING LOGIC - END"],"type":"text/javascript","packages":{}}}],"id":"2cd76829-b688-46ee-b744-c9102ec1f8c4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"refresh_token\": \"{{login_identity_refresh_token}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/auth/token/refresh","description":"<p>Generate a new <code>login_identity_token</code> and <code>login_identity_refresh_token</code> using a valid <code>login_identity_refresh_token</code>.</p>\n<p>This only refreshes the Customer App's ability to authenticate with Finverse's API -- it does not refresh or modify any end-user data associated with the Login Identity. To request instead Finverse to retrieve new data from connected institutions, please use the <code>POST</code> requests under \"<strong>Data Refresh</strong>\".</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h1 id=\"request-parameters\">Request parameters</h1>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>refresh_token</td>\n<td>string, required</td>\n<td>Login Identity refresh token (referred to as <code>login_identity_refresh_token</code>) generated during the initial linking session (e.g. <code>POST /auth/token</code>) or during a subsequent token refresh request (POST /auth/token/refresh).  <br />  <br />Note: this request invalidates the <code>refresh_token</code> submitted. Use the <code>refresh_token</code> returned in the response for subsequent refresh requests.</td>\n</tr>\n</tbody>\n</table>\n</div><h1 id=\"response-fields\">Response fields</h1>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>access_token</td>\n<td>string</td>\n<td><strong>(SENSITIVE)</strong> Login Identity access token (referred to as <code>login_identity_token</code>).</td>\n</tr>\n<tr>\n<td>expires_in</td>\n<td>integer</td>\n<td>Access token validity length (in seconds).</td>\n</tr>\n<tr>\n<td>issued_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Access token issue time</td>\n</tr>\n<tr>\n<td>login_identity_id</td>\n<td>string</td>\n<td>Finverse Login Identity ID for this Login Identity. Always unique. Linking the same account at the same institution twice will result in two Login Identities with different IDs (use Refresh/Relink methods to refresh data for a Login Identity without updating the ID).</td>\n</tr>\n<tr>\n<td>refresh_token</td>\n<td>string</td>\n<td><strong>(SENSITIVE)</strong> Login Identity refresh token (referred to as <code>login_identityrefresh_token</code>)</td>\n</tr>\n<tr>\n<td>token_type</td>\n<td>string ENUM</td>\n<td>Possible values: <code>Bearer</code></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"token-handling\">Token handling</h2>\n<h3 id=\"storage\">Storage</h3>\n<p><code>login_identity_token</code> and <code>login_identity_refresh_token</code> are highly sensitive since they are needed to retrieve data on each Login Identity.</p>\n<p><strong>Best practices:</strong></p>\n<p>* Securely store each token in your back-end<br />* Never disclose these tokens externally (e.g. in your front-end).</p>\n<h3 id=\"renewal\">Renewal</h3>\n<p><code>login_identity_token</code> expires after 1 hour. <code>login_identity_refresh_token</code> expires after 90 days.</p>\n<p>Repeat this request for token renewal.</p>\n","urlObject":{"path":["auth","token","refresh"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"b2cd530f-2131-4f70-92eb-c615dd2d78b2","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"refresh_token\": \"{{login_identity_refresh_token}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/auth/token/refresh"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-f27b63c27ec62ee0112b4e30029a3900-9627d612d880af50-01"},{"key":"vary","value":"Origin"},{"key":"x-cloud-trace-context","value":"f27b63c27ec62ee0112b4e30029a3900/10819852006210973520;o=1"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Fri, 15 Jan 2021 07:40:20 GMT"},{"key":"x-envoy-upstream-service-time","value":"191"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"transfer-encoding","value":"chunked"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"access_token\": \"login_identity_token\",\n    \"expires_in\": 3600,\n    \"issued_at\": \"2022-08-01T01:01:00.000Z\",\n    \"login_identity_id\": \"login_identity_id\",\n    \"refresh_token\": \"login_identity_refresh_token\",\n    \"token_type\": \"Bearer\"\n}"},{"id":"fa894a7c-3c8b-4a81-b056-a63f628efb27","name":"Error (invalid refresh_token)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","type":"text","value":"1777634238"}],"body":{"mode":"raw","raw":"{\n    \"refresh_token\": \"{{login_identity_refresh_token}}1\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/auth/token/refresh"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-601a84e978aa07c6b9e0f65a07177ed5-846ad37e20b491fd-01"},{"key":"tracestate","value":""},{"key":"vary","value":"Origin"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Tue, 27 Apr 2021 09:28:15 GMT"},{"key":"content-length","value":"103"},{"key":"x-envoy-upstream-service-time","value":"9"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40009,\n        \"message\": \"The given refresh token is invalid\",\n        \"name\": \"REFRESH_TOKEN_INVALID\"\n    }\n}"}],"_postman_id":"2cd76829-b688-46ee-b744-c9102ec1f8c4"},{"name":"/login_identity (Unlink Login Identity)","event":[{"listen":"test","script":{"id":"2bc6ca81-92a1-4672-a03d-9730fd952c2f","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Success or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"success\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"success\": {\"type\":\"boolean\"}","        },","        \"required\" : [","            \"success\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","//POSTMAN COLLECTION ROUTING LOGIC","    pm.execution.setNextRequest(\"\") ///End Postman run","    console.log(\"Postman run complete\")","//POSTMAN COLLECTION ROUTING LOGIC - END"],"type":"text/javascript","packages":{}}}],"id":"d4e4c835-4d09-4257-a3db-4e2ef75d7991","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"DELETE","header":[{"description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","key":"X-Request-Id","type":"text","value":"1777634238"}],"url":"https://api.prod.finverse.net/login_identity","description":"<p>Unlink a Login Identity (using a specific login_identity_token). This deletes the associated login_identity_token, login_identity_refresh_token and all associated bank data (e.g. Accounts, Transactions). Authorization: login_identity_token</p>\n","urlObject":{"path":["login_identity"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"46045cda-cea7-4b04-8f25-4e0cc2439cd1","name":"Success","originalRequest":{"method":"DELETE","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/login_identity"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-3c52b52cef4e4b4db086a59623a26f12-9e3484d7164742de-01"},{"key":"vary","value":"Origin"},{"key":"x-cloud-trace-context","value":"3c52b52cef4e4b4db086a59623a26f12/11399882616108171998;o=1"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Fri, 15 Jan 2021 07:26:24 GMT"},{"key":"content-length","value":"17"},{"key":"x-envoy-upstream-service-time","value":"255"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true\n}"}],"_postman_id":"d4e4c835-4d09-4257-a3db-4e2ef75d7991"}],"id":"00069506-a143-4ff7-933f-110fcc52c449","event":[{"listen":"prerequest","script":{"id":"1e49d652-93c7-41f4-9226-0830f288607c","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"e7fa2a75-7fac-4755-9fe0-aa248861d083","type":"text/javascript","exec":[""]}}],"_postman_id":"00069506-a143-4ff7-933f-110fcc52c449","description":""},{"name":"13 - Data Refresh & Relinking","item":[{"name":"Data Refresh","item":[{"name":"login_identity/refresh (User-present data refresh)","event":[{"listen":"test","script":{"id":"92a3a791-fceb-48d4-b520-2b20b333890e","exec":["jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","pm.environment.set(\"link_token\", jsonData.access_token);","pm.environment.set(\"link_url\", jsonData.link_url);","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Access Token or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"access_token\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"access_token\": {\"type\":\"string\"},","            \"expires_in\": {\"type\":\"integer\"},","            \"issued_at\": {\"type\":\"string\"},","            \"login_identity_id\": {\"type\":\"string\"},","            \"link_url\": {\"type\":\"string\"},","            \"token_type\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"access_token\",","            \"expires_in\",","            \"issued_at\",","            \"link_url\",","            \"login_identity_id\",","            \"token_type\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","","//POSTMAN COLLECTION ROUTING LOGIC","    pm.execution.setNextRequest(\"/link/fvlink/status/{login_identity_id} (Retrieve link/refresh status)\")","    console.log(\"Next request: Refresh link status\")","//POSTMAN COLLECTION ROUTING LOGIC - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"8cd15724-13f0-49a8-ad33-632423a495f5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"link_customizations\": {\n        // history_date_limit: \"2026-03-01\",\n        \"redirect_uri\": \"https://developer.prod.finverse.net/sink\",\n        \"state\": \"setup_on_developer_portal_stateparameter\",\n        \"ui_mode\": \"redirect\"\n    },\n    \"user_present\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/login_identity/refresh","description":"<p>Trigger a data refresh request for a Login Identity, requesting Finverse to start authenticating with the institution (using stored credentials), and if authentication succeeds, to fetch new data for the Login Identity.</p>\n<p>This refresh request example uses the <strong>user-present mode</strong> see the next request for an example of the <strong>background refresh mode.</strong></p>\n<p><em>Note: a success response only indicates that the refresh request has been accepted and is being processed. Authentication or data retrieval may still fail asynchronously (e.g. a user may have changed their credentials).</em></p>\n<p><strong>Authorization</strong>: <code>login_identity_token</code></p>\n<h3 id=\"refresh-requirements\">Refresh requirements</h3>\n<p><strong>When a refresh is requested, Finverse will first check that the refresh is allowed:</strong></p>\n<ul>\n<li><p><strong>All data refreshes:</strong> Finverse first checks whether the Login Identity is eligible for refreshes, i.e. the Login Identity has <code>refresh.refresh_allowed = true</code> (see <code>GET /login_identity</code>). This means:</p>\n<ul>\n<li><p>The user's credentials are available (i.e. the user provided consent to store the credentials for refreshes); and</p>\n</li>\n<li><p>The user's Login Identity is in refreshable state (e.g. previous linking/refresh attempts did not result in a persistent user-error).</p>\n</li>\n</ul>\n</li>\n<li><p><strong>Background data refreshes</strong>: Finverse also checks whether the institution being refreshed is generally available for background refreshes, i.e. the institution has <code>login_details.refresh_supported</code> = <code>true</code>. (see <code>GET /institutions</code>).</p>\n</li>\n</ul>\n<p>If the refresh is allowed, Finverse will start re-authenticating the Login Identity with the institution, and if authentication succeeds, Finverse will then fetch new data for the Login Identity.</p>\n<h1 id=\"request-parameters\">Request parameters</h1>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>link_customizations</td>\n<td>object, optional</td>\n<td>Optional parameters to customize the behaviour of Finverse Link's UI to fit your implementation requirements. See below.</td>\n</tr>\n<tr>\n<td>user_present</td>\n<td>boolean, optional</td>\n<td>Flag to indicate whether the user is present in the customer's app (to handle any 2FA action steps required during authorization).  <br />  <br /><strong>If</strong> <strong><code>user_present</code></strong> <strong>=</strong> <strong><code>true</code></strong>: Finverse will use the \"<strong>user-present refresh</strong>\" mode. This allows initiating a refresh for any institution.  <br />  <br /><strong>If</strong> <strong><code>user_present</code></strong> <strong>=</strong> <strong><code>false</code></strong> <strong>or omitted:</strong> Finverse will use the \"<strong>background refresh</strong>\" mode. This only allows refreshing when the institution's <code>login_details.refresh_supported</code> = <code>true</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"link_customizations-object-optional\">link_customizations (object, optional)</h3>\n<p>Optional parameters to customize the behaviour of Finverse Link's UI to fit your implementation requirements.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>history_date_limit</td>\n<td>string (ISO 8601 date: YYYY-MM-DD)</td>\n<td>Sets a specific start date limit for the transaction history retrieved by Finverse from the institution. This is useful when you only need Finverse to fetch recent transactions and want to speed up data retrieval.  <br />  <br />If omitted, Finverse will fetch the full available transaction history (3-24 months depending on the institution).</td>\n</tr>\n<tr>\n<td>redirect_uri</td>\n<td>string, conditionally required</td>\n<td>Finverse Link will redirect to this uri after either success or failure.  <br />  <br />Only required if <code>ui_mode</code> = <code>redirect</code> or <code>auto_redirect</code>.  <br />  <br />To use <code>GET /link/fvlink/status/{login_identity_id}</code> to check the status of the refresh session, you must provide a redirect_uri.  <br />  <br />Note: if provided, <code>redirect_uri</code> must be valid and associated with the <code>client_id</code>.</td>\n</tr>\n<tr>\n<td>state</td>\n<td>string, optional</td>\n<td>Customer-supplied state (treated as an opaque value), used by customer to uniquely identify the linking session.  <br />  <br />Only required if <code>ui_mode</code> = <code>redirect</code> or <code>auto_redirect</code>.  <br />  <br />To use <code>GET /link/fvlink/status/{login_identity_id}</code> to check the status of the refresh session, you must provide a <code>state</code>.</td>\n</tr>\n<tr>\n<td>ui_mode</td>\n<td>string, optional</td>\n<td>Specifies the behaviour of the Finverse Link UI upon completion of the linking flow (in both success or error cases). If left empty, Finverse Link will default to iframe behaviour for the Data institution linking UI.  <br />  <br /><strong>Recommended values</strong>: any (based on desired UI)  <br />  <br /><strong>Accepted values</strong>:  <br />- \"\": defaults to iframe behaviour for the Data institution linking UI.  <br />- iframe: for use when the Finverse Link UI is launched as an iframe/webview embedded within the customer's application. On success/error, the callback to the customer's redirect_uri is triggered in the background, and the response is silently discarded. Finverse will display an Exit (\"X\") button on each screen and a \"Continue\" button on final success/error screens, allowing the user to close the iframe/webview and return to the customer's application (requires customer's application to handle iframe/webview messages).  <br />- redirect: for use when the Finverse Link UI is launched in a new window/webview. On success/error, the callback isn't triggered immediately, but is bound to the \"Continue\" and \"Exit\" buttons. When the user clicks either button, the UI will navigate to the customer's redirect_uri.  <br />- auto_redirect: similar to redirect mode, for use when the Finverse Link UI is launched in a new window/webview. On success/error, the callback is automatically triggered after 1 second, and the UI navigates to the customer's redirect_uri.  <br />standalone: for use when the Finverse Link UI is launched in a new window/webview without the need to navigate back to the customer's application. On success/error, the callback to the customer's redirect_uri is triggered in the background, and the response is silently discarded. Finverse will display a \"You may close this window now\" message on final success/error screens, guiding the user to manually close the window/webview.</td>\n</tr>\n</tbody>\n</table>\n</div><h1 id=\"response-fields\">Response fields</h1>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>access_token</td>\n<td>string</td>\n<td>Link session token (referred to as <code>link_token</code>)</td>\n</tr>\n<tr>\n<td>expires_in</td>\n<td>integer</td>\n<td>Token validity length (in seconds)</td>\n</tr>\n<tr>\n<td>issued_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Token issue time</td>\n</tr>\n<tr>\n<td>link_url</td>\n<td>string</td>\n<td>URL to launch the Finverse Link UI flow associated with this <code>link_token</code>, for the end-user to view the refresh status, or to provide 2F action inputs.</td>\n</tr>\n<tr>\n<td>login_identity_id</td>\n<td>string (ULID)</td>\n<td>Finverse Login Identity ID for the Login Identity being refreshed.</td>\n</tr>\n<tr>\n<td>token_type</td>\n<td>string ENUM</td>\n<td>Possible values: <code>Bearer</code></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"monitoring-refresh-status\">Monitoring refresh status</h2>\n<p><strong>To check the authentication &amp; data retrieval progress</strong>: see the section on \"<em>Monitoring refresh status</em>\" under \"<strong>Data Refresh</strong>\" above.</p>\n<h2 id=\"token-handling\">Token handling</h2>\n<p><strong>Note: only applies if using</strong> <strong><code>GET /link/fvlink/status/{login_identity_id}</code></strong> to check the refresh result.</p>\n<p><strong>Usage:</strong> <code>link_token</code> can be used by either back-end or front-end clients to check the linking status via <code>GET /link/fvlink/status/{login_identity_id}</code>. It is the only Finverse API token that is allowed for use by front-end clients.</p>\n<p><strong>Renewal</strong>: <code>link_token</code> expires after 5 minutes. Repeat the refresh request if the token has expired.</p>\n<h2 id=\"link-url-handling\">Link URL handling</h2>\n<p><strong>Note: only applies to user-present refresh mode</strong> (i.e. where <code>user_present</code> = <code>true</code>).</p>\n<p>Depending on your preferred refresh UI, if the user is present, you can initiate a refresh and then either:</p>\n<ol>\n<li><p><strong>Immediately open the Link URL</strong>, so the user can see the refresh status &amp; handle any 2FA action steps;</p>\n</li>\n<li><p><strong>(recommended) Store the</strong> <strong><code>link_url</code></strong> <strong>and monitor the refresh status in the background until the refresh status is updated,</strong> and then either:</p>\n<ol>\n<li><p>If a 2FA action is required, open the <code>link_url</code> so the user can complete the action steps using the Finverse Link UI.</p>\n</li>\n<li><p>If the refresh is successful or encounters an error, either directly display the refresh result to your user in your application, or open the <code>link_url</code> for the Finverse Link UI to display a success/error message to the user.</p>\n</li>\n</ol>\n</li>\n</ol>\n","urlObject":{"path":["login_identity","refresh"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"6129d17e-28f7-4cd5-850e-b9f7cd4dc4ae","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"link_customizations\": {\n        \"redirect_uri\": \"https://developer.prod.finverse.net/sink\",\n        \"state\": \"setup_on_developer_portal_stateparameter\",\n        \"ui_mode\": \"redirect\"\n    },\n    \"user_present\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/login_identity/refresh"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1727065975"},{"key":"Date","value":"Mon, 23 Sep 2024 04:32:56 GMT"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"},{"key":"Transfer-Encoding","value":"chunked"}],"cookie":[],"responseTime":null,"body":"{\n    \"access_token\": \"eyJhbGciOiJSUzI1NiIsImtpZCI6Imp3dC9jcnlwdG9LZXlzL2p3dC1rZXkvY3J5cHRvS2V5VmVyc2lvbnMvMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2FwaS5wcm9kLmZpbnZlcnNlLm5ldCIsImNsaWVudElkIjoiMDFGNzMwWTIyTTdKSERZQjRFNEsxREsyV0ciLCJjdXN0b21lckFwcElkIjoiMDFGNzMwWTI0NjlDMzdHM0RCNTNHUFRYOTkiLCJleHAiOjE3MjcwNjYyNzYsImlhdCI6MTcyNzA2NTk3NiwiaW5zdGl0dXRpb25JZCI6InRlc3RiYW5rMiIsImlzcyI6ImZpbnZlcnNlLXByb2QiLCJsaW5rVG9rZW5SZXF1ZXN0Ijoie1wicmVkaXJlY3RfdXJpXCI6XCJodHRwczovL2VucTRhNjBqbjN6dXAueC5waXBlZHJlYW0ubmV0L2NhbGxiYWNrXCIsXCJzdGF0ZVwiOlwiMDFGNzMwWTI0NjlDMzdHM0RCNTNHUFRYOTlfc3RhdGVwYXJhbWV0ZXJcIixcInVpX21vZGVcIjpcInJlZGlyZWN0XCJ9IiwibG9naW5JZGVudGl0eUlkIjoiMDFKOEVKN1owQ0ZKVFdUS0U0Vlk5N0pENEciLCJwcm9kdWN0RmxvdyI6IlJFRlJFU0hfREFUQV9SRVRSSUVWQUwiLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vZW5xNGE2MGpuM3p1cC54LnBpcGVkcmVhbS5uZXQvY2FsbGJhY2siLCJzY29wZSI6ImN1c3RvbWl6YXRpb246Z2V0IGluc3RpdHV0aW9uIGZ2TGlua1N0YXR1czpyZWFkIGxpbmtBcGk6dXBkYXRlIiwic3ViIjoiMDFGNzMwWTIyTTdKSERZQjRFNEsxREsyV0cifQ.T_RA97CZ0KRBHyX1sMIhpQX_NLWMaYKz2i3227yY_NKJ4uWYZ5SESqquwsGZITqCO-LlYMVwZNvJ3r2F-JlmKCs5-trtEiuTkNYN_dlgv8u8knY6YTsDHWegYwqZcR0DdTYZLeowbOpfsXzOTExXQaaowY3VWCQ78IWXo5fISy0LqZ4V-GMKs5un4V4CLKgYzWPOGaD-YDDrlSaFtOB-fSlymPaeOJ4nzRlsJr84IGII80NcC_3Z_A3qx5kru30pv4PDuXA5GcbUG_5FYFbWs4rRhhpNPcVa5wE8BlHZ4OF6QZimrd7zSo6mzIS9YuWA1OuXLK6aPiQnzEu-Bo-TT0jSMZCWOzOVc7sgLotjxMFMdUMo2DUQxLiiP-AzeyPjQFHae-uyY4OYkf5Ydsta46-Zr2GPeU1kpEo2hsSuYKfnmoq7VhfVUcyanvab6NqtJyBj5oCeYofSAHNAAJMwtV3hgpEWAuNaEm-45oDdyuhWHHreBGjjrKHAMnBVHolfnrHqK92becuGSpadeTpsmim2XDVijm4V0dRHKHrqDQYt2WWjR6GMBUqtaKJt0FrR-rZtzlNEiHTjIYzau1EsqY3Lso4dsf5DXjk8TDBzOwjAN4ZZd54DPRBbXAeS20ok3thDC2ljquIOOcsKjBRITQUdI-ooY7_dWVY7bm76FlU\",\n    \"expires_in\": 300,\n    \"issued_at\": \"2024-09-23T04:32:56.000Z\",\n    \"link_url\": \"https://link.prod.finverse.net/onboarding/refresh?token=eyJhbGciOiJSUzI1NiIsImtpZCI6Imp3dC9jcnlwdG9LZXlzL2p3dC1rZXkvY3J5cHRvS2V5VmVyc2lvbnMvMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2FwaS5wcm9kLmZpbnZlcnNlLm5ldCIsImNsaWVudElkIjoiMDFGNzMwWTIyTTdKSERZQjRFNEsxREsyV0ciLCJjdXN0b21lckFwcElkIjoiMDFGNzMwWTI0NjlDMzdHM0RCNTNHUFRYOTkiLCJleHAiOjE3MjcwNjYyNzYsImlhdCI6MTcyNzA2NTk3NiwiaW5zdGl0dXRpb25JZCI6InRlc3RiYW5rMiIsImlzcyI6ImZpbnZlcnNlLXByb2QiLCJsaW5rVG9rZW5SZXF1ZXN0Ijoie1wicmVkaXJlY3RfdXJpXCI6XCJodHRwczovL2VucTRhNjBqbjN6dXAueC5waXBlZHJlYW0ubmV0L2NhbGxiYWNrXCIsXCJzdGF0ZVwiOlwiMDFGNzMwWTI0NjlDMzdHM0RCNTNHUFRYOTlfc3RhdGVwYXJhbWV0ZXJcIixcInVpX21vZGVcIjpcInJlZGlyZWN0XCJ9IiwibG9naW5JZGVudGl0eUlkIjoiMDFKOEVKN1owQ0ZKVFdUS0U0Vlk5N0pENEciLCJwcm9kdWN0RmxvdyI6IlJFRlJFU0hfREFUQV9SRVRSSUVWQUwiLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vZW5xNGE2MGpuM3p1cC54LnBpcGVkcmVhbS5uZXQvY2FsbGJhY2siLCJzY29wZSI6ImN1c3RvbWl6YXRpb246Z2V0IGluc3RpdHV0aW9uIGZ2TGlua1N0YXR1czpyZWFkIGxpbmtBcGk6dXBkYXRlIiwic3ViIjoiMDFGNzMwWTIyTTdKSERZQjRFNEsxREsyV0cifQ.T_RA97CZ0KRBHyX1sMIhpQX_NLWMaYKz2i3227yY_NKJ4uWYZ5SESqquwsGZITqCO-LlYMVwZNvJ3r2F-JlmKCs5-trtEiuTkNYN_dlgv8u8knY6YTsDHWegYwqZcR0DdTYZLeowbOpfsXzOTExXQaaowY3VWCQ78IWXo5fISy0LqZ4V-GMKs5un4V4CLKgYzWPOGaD-YDDrlSaFtOB-fSlymPaeOJ4nzRlsJr84IGII80NcC_3Z_A3qx5kru30pv4PDuXA5GcbUG_5FYFbWs4rRhhpNPcVa5wE8BlHZ4OF6QZimrd7zSo6mzIS9YuWA1OuXLK6aPiQnzEu-Bo-TT0jSMZCWOzOVc7sgLotjxMFMdUMo2DUQxLiiP-AzeyPjQFHae-uyY4OYkf5Ydsta46-Zr2GPeU1kpEo2hsSuYKfnmoq7VhfVUcyanvab6NqtJyBj5oCeYofSAHNAAJMwtV3hgpEWAuNaEm-45oDdyuhWHHreBGjjrKHAMnBVHolfnrHqK92becuGSpadeTpsmim2XDVijm4V0dRHKHrqDQYt2WWjR6GMBUqtaKJt0FrR-rZtzlNEiHTjIYzau1EsqY3Lso4dsf5DXjk8TDBzOwjAN4ZZd54DPRBbXAeS20ok3thDC2ljquIOOcsKjBRITQUdI-ooY7_dWVY7bm76FlU&ui_mode=redirect\",\n    \"login_identity_id\": \"01J8EJ7Z0CFJTWTKE4VY97JD4G\",\n    \"token_type\": \"Bearer\"\n}"},{"id":"723c6857-33c2-42e9-9b84-f7d939a3444c","name":"Error (no credentials stored)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"link_customizations\": {\n        \"redirect_uri\": \"https://developer.prod.finverse.net/sink\",\n        \"state\": \"setup_on_developer_portal_stateparameter\",\n        \"ui_mode\": \"redirect\"\n    },\n    \"user_present\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/login_identity/refresh"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1727066052"},{"key":"Date","value":"Mon, 23 Sep 2024 04:34:14 GMT"},{"key":"Content-Length","value":"214"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40013,\n        \"error_code\": \"LOGIN_IDENTITY_CREDENTIALS_NOT_STORED\",\n        \"message\": \"The user did not consent to storing their credentials. Cannot perform refresh.\",\n        \"request_id\": \"1727066052\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"1e5165aa-377f-4536-802d-f02d22bfc071","name":"Error (Login Identity is busy or not available for refresh due to a previous refresh error)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"link_customizations\": {\n        \"ui_mode\": \"standalone\"\n    },\n    \"user_present\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/login_identity/refresh"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1727080860"},{"key":"Date","value":"Mon, 23 Sep 2024 08:41:00 GMT"},{"key":"Content-Length","value":"154"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40011,\n        \"error_code\": \"LOGIN_IDENTITY_BUSY\",\n        \"message\": \"The selected Login Identity is busy.\",\n        \"request_id\": \"1727080860\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"8cd15724-13f0-49a8-ad33-632423a495f5"},{"name":"login_identity/refresh (Background data refresh)","event":[{"listen":"test","script":{"id":"92a3a791-fceb-48d4-b520-2b20b333890e","exec":["jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","pm.environment.set(\"link_token\", jsonData.access_token);","pm.environment.set(\"link_url\", jsonData.link_url);","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Access Token or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"access_token\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"access_token\": {\"type\":\"string\"},","            \"expires_in\": {\"type\":\"integer\"},","            \"issued_at\": {\"type\":\"string\"},","            \"login_identity_id\": {\"type\":\"string\"},","            \"link_url\": {\"type\":\"string\"},","            \"token_type\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"access_token\",","            \"expires_in\",","            \"issued_at\",","            \"link_url\",","            \"login_identity_id\",","            \"token_type\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"50f6f51c-940e-478a-b659-0ec0ed8271cc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"body":{"mode":"raw","raw":"//{\n    //\"link_customizations\": {\n        // history_date_limit: \"2026-03-01\"\n    //},\n    //\"user_present\": false\n//}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/login_identity/refresh","description":"<p>Trigger a data refresh request for a Login Identity, requesting Finverse to start authenticating with the institution (using stored credentials), and if authentication succeeds, to fetch new data for the Login Identity.</p>\n<p>This refresh request example uses the <strong>background refresh mode</strong>, see the previous request for an example of the <strong>user-present mode.</strong></p>\n<p>See <code>POST /login_identity/refresh (Background refresh)</code> for full details on the request &amp; response.</p>\n","urlObject":{"path":["login_identity","refresh"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"36101173-bb0e-453e-b8b8-b8995b65db88","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/login_identity/refresh"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1727065476"},{"key":"Date","value":"Mon, 23 Sep 2024 04:24:36 GMT"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"},{"key":"Transfer-Encoding","value":"chunked"}],"cookie":[],"responseTime":null,"body":"{\n    \"access_token\": \"eyJhbGciOiJSUzI1NiIsImtpZCI6Imp3dC9jcnlwdG9LZXlzL2p3dC1rZXkvY3J5cHRvS2V5VmVyc2lvbnMvMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2FwaS5wcm9kLmZpbnZlcnNlLm5ldCIsImNsaWVudElkIjoiMDFGNzMwWTIyTTdKSERZQjRFNEsxREsyV0ciLCJjdXN0b21lckFwcElkIjoiMDFGNzMwWTI0NjlDMzdHM0RCNTNHUFRYOTkiLCJleHAiOjE3MjcwNjU3NzUsImlhdCI6MTcyNzA2NTQ3NSwiaW5zdGl0dXRpb25JZCI6InRlc3RiYW5rIiwiaXNzIjoiZmludmVyc2UtcHJvZCIsImxpbmtUb2tlblJlcXVlc3QiOiJ7fSIsImxvZ2luSWRlbnRpdHlJZCI6IjAxSjhFSFFZWko3VFFTUk1RS0tBNEFDWlhRIiwicHJvZHVjdEZsb3ciOiJSRUZSRVNIX0RBVEFfUkVUUklFVkFMIiwicmVkaXJlY3RVcmkiOiIiLCJzY29wZSI6ImN1c3RvbWl6YXRpb246Z2V0IGluc3RpdHV0aW9uIGZ2TGlua1N0YXR1czpyZWFkIGxpbmtBcGk6dXBkYXRlIiwic3ViIjoiMDFGNzMwWTIyTTdKSERZQjRFNEsxREsyV0cifQ.ggudIRK2m7G5GSAbwFUkqNytmihRj2mX3jX5hA5pBDqnJpSx5FFSBUBKAw2CWjJn2gmQlGDDOptVYh_xBKZ4fwZN22vfDjuzCpe2GOxXlTbd4n4AjekpwXzsPP6BOUuu2DBEW_QGkU6ZMcouPcc7BgBLlvKmD3xkDXQaFd5CeYX_PIwCtWOod4UGSB71hAQ8MQukJC4p8aks4DaQtLksuMrlBsF4iidvVBDpe6VupI6AHmiek2hiS5-4rpxmxSCE_bN2D5CJ4_QetnFJNpSp8zLZi6buNpF0zO6uyq-NRCoKi2-gJb6isfpp4Q5b8WbBZv7BNG1FE8Al3nj955Aivi2oF3sIX-6RFtpntQOm7_adwo16LbNtmtWWIFJ-Ah-4yzjRgMzmuuv49OQLv_RldeNOfCEd2wuoKLRwWn8GCLQ8TGNyWi3xe-113Hm5yoPa7FOLd4K1qYclEC3P5JtfPy6fXDlXaodAhE53mreiD-7VwQ1v2DtSAxu5p4-QJxT-AbIp7j9nzrXoWMkw98YeKHZWuUfZqpHBT0I0059fv8FHy1M4R-TnSJN2_71yuNf2COJLhhtOYtdjWaLJz0mfmNhYX0lbeBtZF6tx8RV5tRRzjYk2CNv-pj7i1IXuCmTF-crUr4y_hOAKbz6reJ02n4yXuqL0KbhsGzoMtfaDXcc\",\n    \"expires_in\": 300,\n    \"issued_at\": \"2024-09-23T04:24:35.000Z\",\n    \"link_url\": \"https://link.prod.finverse.net/onboarding/refresh?token=eyJhbGciOiJSUzI1NiIsImtpZCI6Imp3dC9jcnlwdG9LZXlzL2p3dC1rZXkvY3J5cHRvS2V5VmVyc2lvbnMvMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2FwaS5wcm9kLmZpbnZlcnNlLm5ldCIsImNsaWVudElkIjoiMDFGNzMwWTIyTTdKSERZQjRFNEsxREsyV0ciLCJjdXN0b21lckFwcElkIjoiMDFGNzMwWTI0NjlDMzdHM0RCNTNHUFRYOTkiLCJleHAiOjE3MjcwNjU3NzUsImlhdCI6MTcyNzA2NTQ3NSwiaW5zdGl0dXRpb25JZCI6InRlc3RiYW5rIiwiaXNzIjoiZmludmVyc2UtcHJvZCIsImxpbmtUb2tlblJlcXVlc3QiOiJ7fSIsImxvZ2luSWRlbnRpdHlJZCI6IjAxSjhFSFFZWko3VFFTUk1RS0tBNEFDWlhRIiwicHJvZHVjdEZsb3ciOiJSRUZSRVNIX0RBVEFfUkVUUklFVkFMIiwicmVkaXJlY3RVcmkiOiIiLCJzY29wZSI6ImN1c3RvbWl6YXRpb246Z2V0IGluc3RpdHV0aW9uIGZ2TGlua1N0YXR1czpyZWFkIGxpbmtBcGk6dXBkYXRlIiwic3ViIjoiMDFGNzMwWTIyTTdKSERZQjRFNEsxREsyV0cifQ.ggudIRK2m7G5GSAbwFUkqNytmihRj2mX3jX5hA5pBDqnJpSx5FFSBUBKAw2CWjJn2gmQlGDDOptVYh_xBKZ4fwZN22vfDjuzCpe2GOxXlTbd4n4AjekpwXzsPP6BOUuu2DBEW_QGkU6ZMcouPcc7BgBLlvKmD3xkDXQaFd5CeYX_PIwCtWOod4UGSB71hAQ8MQukJC4p8aks4DaQtLksuMrlBsF4iidvVBDpe6VupI6AHmiek2hiS5-4rpxmxSCE_bN2D5CJ4_QetnFJNpSp8zLZi6buNpF0zO6uyq-NRCoKi2-gJb6isfpp4Q5b8WbBZv7BNG1FE8Al3nj955Aivi2oF3sIX-6RFtpntQOm7_adwo16LbNtmtWWIFJ-Ah-4yzjRgMzmuuv49OQLv_RldeNOfCEd2wuoKLRwWn8GCLQ8TGNyWi3xe-113Hm5yoPa7FOLd4K1qYclEC3P5JtfPy6fXDlXaodAhE53mreiD-7VwQ1v2DtSAxu5p4-QJxT-AbIp7j9nzrXoWMkw98YeKHZWuUfZqpHBT0I0059fv8FHy1M4R-TnSJN2_71yuNf2COJLhhtOYtdjWaLJz0mfmNhYX0lbeBtZF6tx8RV5tRRzjYk2CNv-pj7i1IXuCmTF-crUr4y_hOAKbz6reJ02n4yXuqL0KbhsGzoMtfaDXcc&ui_mode=iframe\",\n    \"login_identity_id\": \"01J8EHQYZJ7TQSRMQKKA4ACZXQ\",\n    \"token_type\": \"Bearer\"\n}"},{"id":"efd569a9-f06b-403f-b7e4-a85220096daf","name":"Error (no credentials stored)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"url":"https://api.prod.finverse.net/login_identity/refresh"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1712918109"},{"key":"Date","value":"Fri, 12 Apr 2024 10:35:08 GMT"},{"key":"Content-Length","value":"214"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40013,\n        \"error_code\": \"LOGIN_IDENTITY_CREDENTIALS_NOT_STORED\",\n        \"message\": \"The user did not consent to storing their credentials. Cannot perform refresh.\",\n        \"request_id\": \"1712918109\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"97a1ed1f-07d8-4608-a8f0-bf367db9a9ee","name":"Error (institution does not support background refresh requests)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/login_identity/refresh"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1727065840"},{"key":"Date","value":"Mon, 23 Sep 2024 04:30:41 GMT"},{"key":"Content-Length","value":"291"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40012,\n        \"error_code\": \"INSTITUTION_REFRESH_NOT_SUPPORTED\",\n        \"message\": \"Institution does not support refresh requests, due to MFA or other end-user authentication requirements. Ask the end-user to complete the /relink flow instead.\",\n        \"request_id\": \"1727065840\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"50f6f51c-940e-478a-b659-0ec0ed8271cc"},{"name":"/link/fvlink/status/{login_identity_id} (Retrieve link/refresh status - for user-present refresh only)","event":[{"listen":"test","script":{"id":"a244bd29-2150-45f4-a620-d89812a00465","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","if(jsonData.action) {","    pm.environment.set(\"action_id\", jsonData.action.action_id)","};","","if (jsonData.action) {","    if (jsonData.action.name === \"DEVICE_SELECTION\") {","        pm.environment.set(\"selected_device\", jsonData.action.fields[0].options[0].value)","    }","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Action, Success or Error object","pm.test(\"Response has expected keys\", function() { ","    pm.expect(jsonData).to.have.any.keys(","        \"action\",","        \"success\",","        \"error\"","    )","});","","//Link status is not an error","pm.test(\"Link status is not an error\", function() { ","    pm.expect(jsonData).to.not.have.any.keys(","        \"error\",","    )","});","","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"action\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"action_id\": {\"type\":\"string\"},","                    \"buttons\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"name\": {\"type\": \"string\"},","                                \"type\": {\"type\": \"string\"},","                                \"value\": {\"type\": \"string\"},     ","                            },","                            \"required\": [","                                \"name\",","                                \"type\",","                                \"value\"","                            ]","                        }","                    },","                    \"fields\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"label\": {\"type\": \"string\"},                            ","                                \"name\": {\"type\": \"string\"},","                                \"options\": {","                                    \"type\": \"array\",","                                    \"items\": {","                                        \"additionalProperties\": false,","                                        \"properties\": {","                                            \"value\": {\"type\": \"string\"},","                                            \"label\": {\"type\": \"string\"}","                                        },","                                        \"required\": [","                                            \"value\",","                                            \"label\"","                                        ]","                                    }","                                },","                                \"placeholder\": {\"type\": \"string\"},","                                \"type\": {\"type\": \"string\"},","                            },    ","                            \"required\": [","                                \"label\",","                                \"name\",","                                \"options\",","                                \"placeholder\",","                                \"type\"","                            ]","                        }","                    },","                    \"messages\": {","                        \"type\":\"array\",","                        \"items\": {","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"name\": {\"type\": \"string\"},","                                \"type\": {\"type\": \"string\"},","                                \"value\": {\"type\": \"string\"},     ","                            },","                            \"required\": [","                                \"name\",","                                \"type\",","                                \"value\"","                            ]","                        }","                    },","                    \"name\": {\"type\":\"string\"},","                    \"type\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"action_id\",","                    \"buttons\",","                    \"fields\",","                    \"messages\",","                    \"name\",","                    \"type\"","                ]","            },","            \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"details\": {\"type\":\"string\"},","                    \"error_code\": {\"type\":\"string\"},","                    \"message\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"},","                    \"type\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"details\",","                    \"error_code\",","                    \"message\",","                    \"request_id\",","                    \"type\"","                ]","            },  ","            \"redirect_uri\": {\"type\": \"string\"},","            \"success\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"code\": {\"type\":\"string\"},","                    \"login_identity_id\": {\"type\":\"string\"},","                    \"state\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"code\",","                    \"login_identity_id\",","                    \"state\"","                ]","            }","        },","        \"required\": []","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\"","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"} // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{}}},{"listen":"prerequest","script":{"id":"37e4da19-430b-4827-baac-6ad4e7e6a494","exec":[""],"type":"text/javascript","packages":{}}}],"id":"cd4ecaba-e89b-4268-865f-e78818a8c715","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{link_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"},{"key":"Accept-Charset","value":"utf-8","type":"text"},{"key":"X-Finverse-Testing","value":"testing","description":"<p>String ENUM, optional. Used to simulate specific linking or data retrieval errors</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/link/fvlink/status/{{login_identity_id}}","description":"<p>Request linking/refresh authentication status for a specific <code>login_identity_id</code>. Only available within 10 minutes of successful link/refresh completion, since the response in success cases is sensitive (contains single-use authentication <code>code</code> which can be exchanged for access tokens required to retrieve data from the Login Identity).</p>\n<p>Notes:</p>\n<ul>\n<li><p><strong>This is a long-duration synchronous request.</strong> The response is provided once the linking/refresh authentication status is known (Action required, Success, Error), which can take anywhere from 0-60s (or sometimes longer) after authentication started, depending on the institution being linked.</p>\n</li>\n<li><p><strong>Handling link status during refreshes</strong>: refer to the section on \"Data Refreshes\" above for guidance on how to handle Action/Success/Error cases during refreshes.</p>\n</li>\n<li><p><strong>The status returned only covers the authentication step of linking/refreshing a Login Identity.</strong></p>\n<ul>\n<li><p>Once authentication is successful, data retrieval/refresh will start immediately.</p>\n</li>\n<li><p>Refer to the guidance on \"<em>When to fetch data from Finverse</em>\" under \"Login Identity\" to determine when to fetch refreshed data (e.g. either by listening to data webhooks or polling <code>GET /login_identity</code>).</p>\n</li>\n</ul>\n</li>\n<li><p><strong>The HTTP response status will be HTTP 200 even if linking failed.</strong> Check the response body for the <code>error</code> object to see if linking failed or succeeded, instead of relying on the HTTP status code.</p>\n</li>\n</ul>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h1 id=\"response-fields\">Response fields</h1>\n<p>Contains one of several objects, indicating the linking/refresh status of the specified <code>login_identity_id</code>.</p>\n<p>Note: a Login Identity represents a unique financial institution authenticated account linked by the end-user. An end-user who links multiple Institutions (or multiple authenticated accounts at the same Institution), will have a distinct Login Identity for each linked account.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>action</td>\n<td>object, optional</td>\n<td>Returned when a dynamic login action is required by the institution (e.g. 2FA).  <br />**  <br />Security note**: may contain PII.</td>\n</tr>\n<tr>\n<td>error</td>\n<td>object, optional</td>\n<td>Returned when linking encountered an error. See Finverse's documentation on API errors.</td>\n</tr>\n<tr>\n<td>redirect_uri</td>\n<td>string</td>\n<td>Returned when linking is successful or encountered an error. This is the redirect url used by the Finverse Link UI upon success or error (only applicable when Finverse Link has been opened).</td>\n</tr>\n<tr>\n<td>success</td>\n<td>object, optional</td>\n<td>Returned when Finverse has successfully authenticated with the institution.  <br />  <br /><strong>Security note</strong>: contains sensitive authentication codes (which can be exchanged for access tokens to retrieve data from the Login Identity).</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"action-case\">Action case</h2>\n<h3 id=\"action-object\">action (object)</h3>\n<p>Return details on any dynamic login action required by the institution (e.g. 2FA).</p>\n<p><strong>Security note</strong>: May contain PII (e.g. the phone number an SMS OTP was sent to).</p>\n<p>There are two types of login actions:</p>\n<ul>\n<li><p>Actions which require user-input inside the linking flow, e.g. 2FA steps requiring a code-input like SMS OTP or token-based OTP. These are labeled as <code>type</code> = <code>ACTION</code>.</p>\n</li>\n<li><p>Actions which require the user to take action outside the linking flow, e.g. 2FA steps like push notification approval (in the user's bank app). In these cases the action flow provides an informational message to the user to complete the action step. These are labeled as <code>type</code> = <code>INFO</code>.</p>\n</li>\n</ul>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>type</td>\n<td>ENUM</td>\n<td>Used to indicate whether the user needs to take action inside the linking flow (ACTION), or outside the linking flow (INFO). Possible values: <code>ACTION</code>, <code>INFO</code></td>\n</tr>\n<tr>\n<td>code</td>\n<td>string</td>\n<td>A code identifying the login action</td>\n</tr>\n<tr>\n<td>messages</td>\n<td>array</td>\n<td>User-facing message(s) to inform the user about what action to take</td>\n</tr>\n<tr>\n<td>fields</td>\n<td>array, nullable</td>\n<td>Describes the fields which require user-input. Only used for <code>type</code> = <code>ACTION</code>. See below.</td>\n</tr>\n<tr>\n<td>buttons</td>\n<td>array, nullable</td>\n<td>Describes the user-facing buttons to display to enable the user to interact with the requested action. Only used for <code>type</code> = <code>ACTION</code>. See below.</td>\n</tr>\n<tr>\n<td>id</td>\n<td>string (ULID)</td>\n<td>Finverse unique ID for this action message</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"messages-array\">messages (array)</h3>\n<p>Describes the user-facing message(s) to inform the user about what action to take.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>string</td>\n<td>Name identifying the message</td>\n</tr>\n<tr>\n<td>type</td>\n<td>ENUM</td>\n<td>Type of message. Possible values: <code>TITLE</code>,<code>BODY</code>, <code>HIGHLIGHT</code></td>\n</tr>\n<tr>\n<td>value</td>\n<td>string</td>\n<td>Message value to be displayed to the user</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"fields-array\">fields (array)</h3>\n<p>Describes the fields which require user-input to enable the user to interact with the requested action. Only used for <code>type</code> = <code>ACTION</code>.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>label</td>\n<td>string</td>\n<td>User-facing label for the field</td>\n</tr>\n<tr>\n<td>name</td>\n<td>string</td>\n<td>Name identifying the field</td>\n</tr>\n<tr>\n<td>options</td>\n<td>array</td>\n<td>List of possible options, from which user needs to select one value. Only used for field <code>type</code> = <code>SELECT</code></td>\n</tr>\n<tr>\n<td>placeholder</td>\n<td>string</td>\n<td>Initial field value to be displayed to the user</td>\n</tr>\n<tr>\n<td>type</td>\n<td>ENUM</td>\n<td>Type of field. Possible values: <code>INPUT</code>, <code>SELECT</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"options-array\">options (array)</h3>\n<p>For a <code>field</code> with <code>type</code>= <code>SELECT</code>, lists the possible options, from which user needs to select one value.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>label</td>\n<td>label</td>\n<td>User-facing label for the option</td>\n</tr>\n<tr>\n<td>value</td>\n<td>string</td>\n<td>Value for the option</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"buttons-array\">buttons (array)</h3>\n<p>Describes the user-facing buttons to display to enable the user to interact with the requested action. Only used for <code>type</code> = <code>ACTION</code>.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>string</td>\n<td>Name identifying the button</td>\n</tr>\n<tr>\n<td>type</td>\n<td>ENUM</td>\n<td>Type of button. Possible values: <code>SUBMIT</code></td>\n</tr>\n<tr>\n<td>value</td>\n<td>string</td>\n<td>Button value to be displayed to the user</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"success-case\">Success case</h2>\n<h3 id=\"success-object\">success (object)</h3>\n<p>Returned when successfully authenticated with the institution.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>code</td>\n<td>string</td>\n<td>One-time use authentication code, which can be exchanged for Login Identity access tokens using <code>POST /auth/token</code></td>\n</tr>\n<tr>\n<td>login_identity_id</td>\n<td>string</td>\n<td>Finverse Login Identity ID for this Login Identity.  <br />  <br />Always unique. Using Refresh/Relink methods to refresh data for a Login Identity always retains the existing ID.</td>\n</tr>\n<tr>\n<td>state</td>\n<td>string</td>\n<td>Customer-supplied state (treated as an opaque value), used by customer to uniquely identify the linking/refresh session</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Authentication code handling:</strong> the single-use authentication <code>code</code> is highly sensitive as it can be exchanged (within 10 minutes) for access tokens to retrieve data from the Login Identity.</p>\n<p>Best practices:</p>\n<ul>\n<li><p>Never store the authentication <code>code</code></p>\n</li>\n<li><p>Immediately exchange the authentication <code>code</code> for a Login Identity access token (see <code>POST /auth/token</code>) to prevent it from being exchanged by anyone else.</p>\n</li>\n</ul>\n<h2 id=\"error-case\">Error case</h2>\n<h3 id=\"error-object\">error (object)</h3>\n<p>Returned when linking/refresh has failed, or when encountering an API error.</p>\n<p>See Finverse's standard error objects under \"Errors\":</p>\n<ul>\n<li><p>API errors</p>\n</li>\n<li><p>Linking errors</p>\n</li>\n</ul>\n","urlObject":{"path":["link","fvlink","status","{{login_identity_id}}"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"00de6411-9cde-4b14-9be7-426418618951","name":"Authentication successful","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"},{"key":"Accept-Charset","value":"utf-8","type":"text"},{"key":"X-Finverse-Testing","value":"testing","description":"String ENUM, optional. Used to simulate specific linking or data retrieval errors","type":"text"}],"url":"https://api.prod.finverse.net/link/fvlink/status/{{login_identity_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1727066225"},{"key":"Date","value":"Mon, 23 Sep 2024 04:37:07 GMT"},{"key":"Content-Length","value":"295"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"redirect_uri\": \"https://enq4a60jn3zup.x.pipedream.net/callback?code=01J8EJPGQMQ821ZYTDN1QP7JME&state=01F730Y2469C37G3DB53GPTX99_stateparameter\",\n    \"success\": {\n        \"code\": \"01J8EJPGQMQ821ZYTDN1QP7JME\",\n        \"login_identity_id\": \"01J8EJK1CCWHJT1PYG0PJE8RYK\",\n        \"state\": \"01F730Y2469C37G3DB53GPTX99_stateparameter\"\n    }\n}"},{"id":"392938b6-3073-4de3-9cd7-fee7b85a7665","name":"Action required (OTP)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"},{"key":"Accept-Charset","value":"utf-8","type":"text"},{"key":"X-Finverse-Testing","value":"testing","description":"Used to simulate specific linking or data retrieval errors","type":"text"}],"url":"https://api.prod.finverse.net/link/status/{{login_identity_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Wed, 07 Sep 2022 08:22:39 GMT"},{"key":"Content-Length","value":"389"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"action\": {\n        \"action_id\": \"01GCBGPFPYNRMCJWBR3GY57BKT\",\n        \"buttons\": [\n            {\n                \"name\": \"buttons_login\",\n                \"type\": \"SUBMIT\",\n                \"value\": \"Login\"\n            }\n        ],\n        \"fields\": [\n            {\n                \"label\": \"One Time Password\",\n                \"name\": \"otp\",\n                \"options\": [],\n                \"placeholder\": \"One Time Password\",\n                \"type\": \"INPUT\"\n            }\n        ],\n        \"messages\": [\n            {\n                \"name\": \"messages_otp_body_testbank\",\n                \"type\": \"BODY\",\n                \"value\": \"Please enter the OTP. Hint: otp_123456\"\n            }\n        ],\n        \"name\": \"MOBILE_OTP\",\n        \"type\": \"ACTION\"\n    }\n}"},{"id":"25531182-033f-490b-a138-8abc16540a1e","name":"Action required (info: push sent)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"},{"key":"Accept-Charset","value":"utf-8","type":"text"},{"key":"X-Finverse-Testing","value":"testing","description":"Used to simulate specific linking or data retrieval errors","type":"text"}],"url":"https://api.prod.finverse.net/link/status/{{login_identity_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Wed, 07 Sep 2022 08:38:26 GMT"},{"key":"Content-Length","value":"493"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"action\": {\n        \"action_id\": \"01GCBHK0S3X6XZSY9PSVX4N2R5\",\n        \"buttons\": [],\n        \"fields\": [],\n        \"messages\": [\n            {\n                \"name\": \"messages_sent_to_phone\",\n                \"type\": \"TITLE\",\n                \"value\": \"Please approve the login request sent to your phone\"\n            },\n            {\n                \"name\": \"messages_sent_to\",\n                \"type\": \"BODY\",\n                \"value\": \"Sent to:\"\n            },\n            {\n                \"name\": \"messages_device\",\n                \"type\": \"HIGHLIGHT\",\n                \"value\": \"devicename\"\n            },\n            {\n                \"name\": \"messages_approval_timeout_default\",\n                \"type\": \"BODY\",\n                \"value\": \"You will have up to 90 seconds to approve the login request\"\n            }\n        ],\n        \"name\": \"PUSH_SENT\",\n        \"type\": \"INFO\"\n    }\n}"},{"id":"38346404-a2cd-46df-a6e2-e0f2a6948d3b","name":"Action required (select device)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"},{"key":"Accept-Charset","value":"utf-8","type":"text"},{"key":"X-Finverse-Testing","value":"testing","description":"Used to simulate specific linking or data retrieval errors","type":"text"}],"url":"https://api.prod.finverse.net/link/status/{{login_identity_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Wed, 07 Sep 2022 08:34:56 GMT"},{"key":"Content-Length","value":"558"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"action\": {\n        \"action_id\": \"01GCBHD0C7K3MNKAJS1ZKS23V6\",\n        \"buttons\": [\n            {\n                \"name\": \"buttons_send_notification\",\n                \"type\": \"SUBMIT\",\n                \"value\": \"Send Notification\"\n            }\n        ],\n        \"fields\": [\n            {\n                \"label\": \"Select a device\",\n                \"name\": \"device\",\n                \"options\": [\n                    {\n                        \"label\": \"phone\",\n                        \"value\": \"phone\"\n                    },\n                    {\n                        \"label\": \"tablet\",\n                        \"value\": \"tablet\"\n                    },\n                    {\n                        \"label\": \"laptop\",\n                        \"value\": \"laptop\"\n                    }\n                ],\n                \"placeholder\": \"Select a device\",\n                \"type\": \"SELECT\"\n            }\n        ],\n        \"messages\": [\n            {\n                \"name\": \"messages_device_selection_approval_title\",\n                \"type\": \"BODY\",\n                \"value\": \"Please select the device to send login approval request to\"\n            }\n        ],\n        \"name\": \"DEVICE_SELECTION\",\n        \"type\": \"ACTION\"\n    }\n}"},{"id":"cb34ac2d-ec80-44ee-8880-5de7bd4f883a","name":"Action required (info: push sent to selected device)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"},{"key":"Accept-Charset","value":"utf-8","type":"text"},{"key":"X-Finverse-Testing","value":"testing","description":"Used to simulate specific linking or data retrieval errors","type":"text"}],"url":"https://api.prod.finverse.net/link/status/{{login_identity_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Wed, 07 Sep 2022 08:36:14 GMT"},{"key":"Content-Length","value":"488"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"action\": {\n        \"action_id\": \"01GCBHF880VGKTRXJPVJ794Z15\",\n        \"buttons\": [],\n        \"fields\": [],\n        \"messages\": [\n            {\n                \"name\": \"messages_sent_to_phone\",\n                \"type\": \"TITLE\",\n                \"value\": \"Please approve the login request sent to your phone\"\n            },\n            {\n                \"name\": \"messages_sent_to\",\n                \"type\": \"BODY\",\n                \"value\": \"Sent to:\"\n            },\n            {\n                \"name\": \"messages_device\",\n                \"type\": \"HIGHLIGHT\",\n                \"value\": \"devicename\"\n            },\n            {\n                \"name\": \"messages_approval_timeout_default\",\n                \"type\": \"BODY\",\n                \"value\": \"You will have up to 90 seconds to approve the login request\"\n            }\n        ],\n        \"name\": \"PUSH_SENT\",\n        \"type\": \"INFO\"\n    }\n}"},{"id":"18833129-f5cf-43d8-b4f0-f7fe05c14787","name":"Error (Linking error: OTP timeout)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"},{"key":"Accept-Charset","value":"utf-8","type":"text"},{"key":"X-Finverse-Testing","value":"testing","description":"Used to simulate specific linking or data retrieval errors","type":"text"}],"url":"https://api.prod.finverse.net/link/status/{{login_identity_id}}"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Wed, 07 Sep 2022 08:44:45 GMT"},{"key":"Content-Length","value":"234"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"redirect_uri\": \"https://example.com/callback?error=otp_timeout&error_message=One+time+password+expired&error_details=The+one+time+password+sent+to+your+mobile+phone+expired%2E+Please+try+again%2E&state=state\" \n}"},{"id":"9ae1be4f-c015-451f-919b-6624feff6acd","name":"Error (API error: Login Identity not found or status expired)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"},{"key":"Accept-Charset","value":"utf-8","type":"text"},{"key":"X-Finverse-Testing","value":"testing","description":"Used to simulate specific linking or data retrieval errors","type":"text"}],"url":"https://api.prod.finverse.net/link/status/{{login_identity_id}}2"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Wed, 21 Sep 2022 16:13:01 GMT"},{"key":"Content-Length","value":"289"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": \"LOGIN_IDENTITY_NOT_FOUND\",\n        \"details\": \"\",\n        \"error_code\": \"LOGIN_IDENTITY_NOT_FOUND\",\n        \"message\": \"login_identity_id cannot be found. Resource does not exist, has been deleted, or is no longer accessible.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"18e1be8e-5c9f-4e71-aedc-8b0ee5481da9","name":"Error (API error: Link token expired)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"},{"key":"Accept-Charset","value":"utf-8","type":"text"},{"key":"X-Finverse-Testing","value":"testing","description":"String ENUM, optional. Used to simulate specific linking or data retrieval errors","type":"text"}],"url":"https://api.prod.finverse.net/link/fvlink/status/{{login_identity_id}}"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1727067864"},{"key":"Date","value":"Mon, 23 Sep 2024 05:04:26 GMT"},{"key":"Content-Length","value":"284"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 401,\n    \"error\": {\n        \"code\": \"NOT_AUTHORIZED\",\n        \"details\": \"Invalid bearer token\",\n        \"error_code\": \"NOT_AUTHORIZED\",\n        \"message\": \"Authorization failed. Please review authorization requirements in API documentation.\",\n        \"request_id\": \"1727067864\",\n        \"type\": \"API_ERROR\"\n    },\n    \"message\": \"Invalid bearer token\"\n}"}],"_postman_id":"cd4ecaba-e89b-4268-865f-e78818a8c715"},{"name":"/link/action/{login_identity_id} (Retrieve link/refresh status - for user-present refresh only)","event":[{"listen":"test","script":{"id":"a4e2d1c4-f41e-4a79-b56a-dd1e9dff8796","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","if(jsonData.login_identity) {","    console.log(\"login_identity.authentication_status.status:\", jsonData.login_identity.authentication_status.status);","    console.log(\"login_identity.session_status:\", jsonData.login_identity.session_status);","    console.log(\"login_identity.status:\", jsonData.login_identity.status);","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Login Identity or Error object","pm.test(\"Response has expected keys\", function() { ","    pm.expect(jsonData).to.have.any.keys(","        \"login_identity\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"institution\": {\"type\":\"object\"},","            \"login_identity\": {","                \"type\":\"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"authentication_id\": {\"type\":\"string\"},","                    \"authentication_status\": {","                        \"type\":\"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"last_successful_update\": {\"type\":\"string\"},","                            \"last_update\": {\"type\":\"string\"},","                            \"status\": {\"type\":\"string\"},","                            \"status_details\": {\"type\":\"string\"}","                        },","                        \"required\" : [","                            \"last_update\",","                            \"status\",","                            \"status_details\"       ","                        ]","                    },","                    \"billing_details\": {\"type\":\"object\"},","                    \"created_at\": {\"type\":\"string\"},","                    \"customer_app_id\": {\"type\":\"string\"},","                    \"error\": {\"type\":\"object\"},","                    \"first_success\": {\"type\":\"string\"},","                    \"institution_id\": {\"type\":\"string\"},","                    \"last_session_id\": {\"type\":\"string\"},","                    \"last_success\": {\"type\":\"string\"},","                    \"linking_attempt_id\": {\"type\":\"string\"},","                    \"login_identity_id\": {\"type\":\"string\"},","                    \"login_methods_available\": {\"type\":\"object\"},","                    \"permissions\": {\"type\":\"null\"},","                    \"permissions_expiry_date\": {\"type\":\"string\"},","                    \"permissions_grant_date\": {\"type\":\"string\"},","                    \"product_status\": {\"type\":\"object\"},","                    \"refresh\": {\"type\":\"object\"},","                    \"session_status\": {\"type\":\"string\"},","                    \"status\": {\"type\":\"string\"},","                    \"status_details\": {\"type\":\"object\"},","                    \"updated_at\": {\"type\":\"string\"},","                    \"user_id\": {\"type\":\"string\"},","                    \"webhook\": {\"type\":\"string\"}","                },","                \"required\" : [","                    \"authentication_id\",","                    \"authentication_status\",","                    \"billing_details\",","                    \"created_at\",","                    \"customer_app_id\",","                    \"error\",","                    \"first_success\",","                    \"institution_id\",","                    \"last_session_id\",","                    \"last_success\",","                    \"linking_attempt_id\",","                    \"login_identity_id\",","                    \"login_methods_available\",","                    \"permissions\",","                    \"permissions_expiry_date\",","                    \"permissions_grant_date\",","                    \"product_status\",","                    \"refresh\",","                    \"session_status\",","                    \"status\",","                    \"status_details\",","                    \"updated_at\",","                    \"user_id\",","                    \"webhook\"                ","                ]","            }","        },","        \"required\" : [","            \"institution\", ","            \"login_identity\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END","","","//POSTMAN COLLECTION ROUTING LOGIC","if(jsonData.login_identity) {","    pm.execution.setNextRequest(\"/link/fvlink/status/{login_identity_id} (Retrieve link status)\"); //Make next request: \"Retrieve link status\"","    console.log(\"Link pending. Next step: Retrieve link status\")","};","","if(jsonData.error) {","    pm.execution.setNextRequest(\"Clear environment variables\") //Make next request: \"Wait for data retrieval \"","    console.log(\"Link error. Next step: Clear environment variables (END LINKING)\")","};","//POSTMAN COLLECTION ROUTING LOGIC - END"],"type":"text/javascript","packages":{}}},{"listen":"prerequest","script":{"id":"7aee3b79-27e2-4c16-a7fb-eb892a2a00c4","exec":["var window = new Object()","var forge;","","// encrypt request body using Envelope encryption and Forge library. Forge documentation: https://cdnjs.com/libraries/forge and https://github.com/digitalbazaar/forge","pm.sendRequest(\"https://cdnjs.cloudflare.com/ajax/libs/forge/0.10.0/forge.min.js\", (err, res) => {","    var window = {}; // for jszip to attach","    eval(res.text());","    window.forge.options.usePureJavaScript = true;","    forge = window.forge;","","    // generate a random key and IV","    var key = forge.random.getBytesSync(32);","    var iv = forge.random.getBytesSync(16);","","    // stringify the plaintext user input (e.g. user 2FA inputs: OTP code, selected device) => this is our plaintext envelope","    var plain_text = JSON.stringify({ ","        data: { ","            // API expects \"data\" object to at least be empty {}, ","                // or to contain the user-input fields requested via GET /link/status/{link_status_id}","            // User-input fields should be passed as key:value pairs where key = fields.name and value = user_input","            otp: pm.variables.get(\"otp\"), // For ACTION: OTP case","            device: pm.variables.get(\"selected_device\")} // For ACTION: DEVICE_SELECTION case","    })","","    // console.log(plain_text);","","    // encrypt the envelope using the random key","    var cipher = forge.cipher.createCipher('AES-GCM', key);","    cipher.start({","        iv: iv,","    })","    var input = forge.util.createBuffer(plain_text, 'utf8')","    cipher.update(input);","    cipher.finish();","","    var inializationVector = forge.util.encode64(iv);","    var mac = cipher.mode.tag.getBytes();","    var messageAuthenticationCode = forge.util.encode64(mac);","    var output = cipher.output.getBytes();","    var ciphertext = forge.util.encode64(output);","    pm.environment.set(\"initialization_vector\", inializationVector)","    pm.environment.set(\"ciphertext\", ciphertext)","    pm.environment.set(\"message_authentication_code\", messageAuthenticationCode)","","    // fetch Finverse's public key","    var institution_jwks_url = pm.variables.get(\"API_HOST\") + \"/jwks\";","    ","    pm.sendRequest({","        url: institution_jwks_url,","        method: \"GET\"","    }, function(err, res) {","        pm.environment.set(\"end_to_end_encryption_key\", res.json().keys[0].x5c[0])","        pm.environment.set(\"end_to_end_encryption_key_id\", res.json().keys[0].kid)","        var pki = forge.pki;","","        let pubkey = pm.variables.get(\"end_to_end_encryption_key\")","        // convert a PEM-formatted public key to a Forge public key","        var publicKey = pki.publicKeyFromPem(pubkey);","","        // encrypt the random key using Finverse's public key => this is our encrypted envelope key","        var encrypted = publicKey.encrypt(key, 'RSA-OAEP', {","            md: forge.md.sha256.create()","        });","","        var envelope_key = forge.util.encode64(encrypted)","        // console.log(envelope_key)","","        pm.environment.set(\"encrypted_envelope_key\", envelope_key)","    })","});"],"type":"text/javascript","packages":{}}}],"id":"03531f2a-f621-42e5-89e0-b7b520eca7c1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{link_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"},{"key":"Accept-Charset","value":"utf-8","type":"text"},{"key":"X-Finverse-Testing","value":"testing","description":"<p>String ENUM, optional. Used to simulate specific linking or data retrieval errors</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"encrypted_credentials\": {        \n            \"ciphertext\": \"{{ciphertext}}\",\n            \"initializationVector\": \"{{initialization_vector}}\",\n            \"messageAuthenticationCode\": \"{{message_authentication_code}}\",\n            \"keyId\": \"{{end_to_end_encryption_key_id}}\",\n            \"envelopeEncryptionKey\": \"{{encrypted_envelope_key}}\",\n            \"state\": \"state\"\n        },\n    \"action_id\": \"{{action_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/link/action/{{login_identity_id}}","description":"<p>Submit login action inputs for a specific <code>login_identity_id</code>. Use webhooks (recommended) or <code>GET /link/status</code> to monitor linking status, including whether any additional login actions are needed..</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<h2 id=\"required-parameters\">Required parameters</h2>\n<h3 id=\"encrypted-credentials\">Encrypted credentials</h3>\n<p>Parameter: <code>encrypted_credentials</code></p>\n<p>Description: Array containing encrypted login action field values &amp; related values (IV, key ID). -- ADDITIONAL DETAILS TO COME.</p>\n<h2 id=\"response-fields\">Response fields</h2>\n<h3 id=\"institution\">institution</h3>\n<p>Summary Institutions object. See <code>GET /institutions</code> for object details.</p>\n<h3 id=\"login_identity\">login_identity</h3>\n<p>Full <code>login_identity</code> object. See <code>GET /login_identity</code> for object details.</p>\n","urlObject":{"path":["link","action","{{login_identity_id}}"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"5958534f-82eb-4806-aa6b-cf7dd84d07dd","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","type":"text","value":"setup_on_developer_portal-1777634238"}],"body":{"mode":"raw","raw":"{\n    \"encrypted_credentials\": \"{encrypted_credentials_object}\",\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/link/action/{{login_identity_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"content-type","value":"application/json"},{"key":"traceparent","value":"00-9bb3c227b0d8f3ed6d732097d109375b-835f6789825528a0-01"},{"key":"vary","value":"Origin"},{"key":"x-request-id","value":"{unique_id}"},{"key":"date","value":"Tue, 15 Feb 2022 03:45:37 GMT"},{"key":"x-envoy-upstream-service-time","value":"75"},{"key":"server","value":"istio-envoy"},{"key":"x-envoy-decorator-operation","value":"api.app.svc.cluster.local:8080/*"},{"key":"transfer-encoding","value":"chunked"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"{\n    \"institution\": {\n        \"countries\": [\n            \"HKG\",\n            \"SGP\",\n            \"PHL\"\n        ],\n        \"institution_id\": \"testbank\",\n        \"institution_name\": \"TestBank HK\",\n        \"portal_name\": \"Test Bank Personal Account\"\n    },\n    \"login_identity\": {\n        \"authentication_id\": \"0\",\n        \"authentication_status\": {\n            \"last_successful_update\": \"2022-08-08T13:09:18.850Z\",\n            \"last_update\": \"2022-08-08T13:09:18.850Z\",\n            \"status\": \"AUTHENTICATING\",\n            \"status_details\": \"AUTHENTICATION_OTP_ENTERED\"\n        },\n        \"billing_details\": {\n            \"billed_products\": null\n        },\n        \"created_at\": \"2022-08-08T13:08:51.610Z\",\n        \"customer_app_id\": \"01FN8SKQZBHGQ478KS5QYEE8JN\",\n        \"error\": {},\n        \"first_success\": \"\",\n        \"institution_id\": \"testbank\",\n        \"last_session_id\": \"01G9YS524KP6CAK7XPTVYVKQ1G\",\n        \"last_success\": \"\",\n        \"linking_attempt_id\": \"0\",\n        \"login_identity_id\": \"01G9YS5226CA15BTYE66KYGF47\",\n        \"login_methods_available\": {},\n        \"permissions\": null,\n        \"permissions_expiry_date\": \"2022-08-08T13:08:51.475Z\",\n        \"permissions_grant_date\": \"2022-08-08T13:08:51.475Z\",\n        \"product_status\": {},\n        \"refresh\": {\n            \"credentials_stored\": false,\n            \"refresh_allowed\": false\n        },\n        \"session_status\": \"IN_PROGRESS\",\n        \"status\": \"AUTHENTICATING\",\n        \"status_details\": {\n            \"event_date\": \"2022-08-08T13:09:35.904Z\",\n            \"event_name\": \"AUTHENTICATION_OTP_ENTERED\"\n        },\n        \"updated_at\": \"2022-08-08T13:09:35.918Z\",\n        \"user_id\": \"01FQN81Q9TKNMMSMPZB8MYBYPY\",\n        \"webhook\": \"https://example.com/callback\"\n    }\n}"},{"id":"b96c276d-0bc7-4c51-bc74-4befa271be76","name":"Error (invalid action_id)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"},{"key":"Accept-Charset","value":"utf-8","type":"text"},{"key":"X-Finverse-Testing","value":"testing","description":"Used to simulate specific linking or data retrieval errors","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"encrypted_credentials\": {        \n            \"ciphertext\": \"{{ciphertext}}\",\n            \"initializationVector\": \"{{initialization_vector}}\",\n            \"messageAuthenticationCode\": \"{{message_authentication_code}}\",\n            \"keyId\": \"{{end_to_end_encryption_key_id}}\",\n            \"envelopeEncryptionKey\": \"{{encrypted_envelope_key}}\",\n            \"state\": \"state\"\n        },\n    \"action_id\": \"{{action_id}}2\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/link/action/{{login_identity_id}}"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Wed, 21 Sep 2022 16:19:34 GMT"},{"key":"Content-Length","value":"219"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": \"INVALID_ACTION_ID\",\n        \"details\": \"\",\n        \"error_code\": \"INVALID_ACTION_ID\",\n        \"message\": \"Invalid action_id. Please verify parameter value.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"81de86da-43e8-45e7-ae89-1629b14b642c","name":"Error (already processed)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"setup_on_developer_portal-1777634238","type":"text"},{"key":"Accept-Charset","value":"utf-8","type":"text"},{"key":"X-Finverse-Testing","value":"testing","description":"Used to simulate specific linking or data retrieval errors","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"encrypted_credentials\": {        \n            \"ciphertext\": \"{{ciphertext}}\",\n            \"initializationVector\": \"{{initialization_vector}}\",\n            \"messageAuthenticationCode\": \"{{message_authentication_code}}\",\n            \"keyId\": \"{{end_to_end_encryption_key_id}}\",\n            \"envelopeEncryptionKey\": \"{{encrypted_envelope_key}}\",\n            \"state\": \"state\"\n        },\n    \"action_id\": \"{{action_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/link/action/{{login_identity_id}}"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Wed, 21 Sep 2022 16:29:08 GMT"},{"key":"Content-Length","value":"273"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": \"ACTION_ALREADY_PROCESSED\",\n        \"details\": \"\",\n        \"error_code\": \"ACTION_ALREADY_PROCESSED\",\n        \"message\": \"action_id has already been submitted and cannot be resubmitted. Please check Link status.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"03531f2a-f621-42e5-89e0-b7b520eca7c1"}],"id":"47c3aa7a-0cb8-421e-910b-325736f96cb6","description":"<h3 id=\"data-refresh-flow\">Data refresh flow</h3>\n<ol>\n<li><p><strong>Initiate a data refresh</strong> using <code>POST /login_identity_refresh</code>, either in user-present refresh or background refresh mode (see <em>Data refresh modes</em> below)</p>\n</li>\n<li><p><strong>Check the refresh authentication status</strong> (see <em>Monitoring refresh authentication status</em> below)</p>\n</li>\n<li><p><strong>Handle any 2FA actions required</strong> by opening the Finverse Link UI (see <em>Handling actions required</em> below)</p>\n</li>\n<li><p><strong>Handle refresh error results by displaying the error to users and deciding when to retry refresh vs. use relink</strong> (see <em>Handling refresh authentication errors</em> below)</p>\n</li>\n<li><p><strong>Handle refresh success by fetching data</strong> (see <em>Fetching refreshed data from Finverse</em> below)</p>\n</li>\n</ol>\n<h3 id=\"data-refresh-modes\">Data refresh modes</h3>\n<p>Two data refresh modes are available:</p>\n<h5 id=\"1-user-present-data-refresh\"><strong>(1) User-present data refresh</strong></h5>\n<p>This triggers a refresh with the user present in your application, providing a low-friction way to refresh data for Login Identities which require a 2FA step.</p>\n<p><strong>User-present refresh frequency:</strong> There are no limits on how often you can trigger user-present data refreshes.</p>\n<h5 id=\"2-background-data-refresh-without-user-present\"><strong>(2) Background data refresh (without user present)</strong></h5>\n<p>The user does not need to be present for background refreshes. This can be used for any Login Identities which do not require a 2FA step to refresh data (see below).</p>\n<p><strong>Background refresh frequency:</strong> Background refreshes can be triggered any time, however customers should avoid excessive background refreshes, to minimize the load on institutions. In addition, institutions may flag frequent refreshes as suspicious and may block or rate limit data access.</p>\n<p><strong>Finverse guidance</strong>:</p>\n<ul>\n<li><p>Refresh up to 1x per week for normal users</p>\n</li>\n<li><p>Refresh again when a user opens your application (up to 1x per day)</p>\n</li>\n<li><p>Allow your user to initiate a refresh on-demand (e.g. if they proactively need fresh data during a day)</p>\n</li>\n</ul>\n<p>Contact Finverse support (<a href=\"https://mailto:support@finverse.com\">support@finverse.com</a>) if you expect to need more frequent refreshes.</p>\n<h3 id=\"deciding-which-data-refresh-mode-to-use\">Deciding which data refresh mode to use</h3>\n<p>See <code>login_details</code> object in <code>GET /institutions</code>:</p>\n<ul>\n<li>If <code>refresh_supported</code> = TRUE, the institution is eligible for <strong>background refreshes</strong>, otherwise it is only eligible for <strong>user-present refreshes.</strong></li>\n</ul>\n<h3 id=\"monitoring-refresh-authentication-status\"><strong>Monitoring refresh authentication status</strong></h3>\n<p>After initiating a refresh, you should monitor the Login Identity's linking/refresh authentication status in the background to determine the next steps. The linking/refresh authentication status can be checked in various ways:</p>\n<h5 id=\"1-listen-to-data--authentication-webhooks\">(1) Listen to data &amp; authentication webhooks</h5>\n<p>See Webhooks &gt; Data webhooks + Authentication webhooks:</p>\n<ul>\n<li><p><em>Data webhooks</em> provide generic alerts on authentication success/failure: <code>event_type</code> = <code>AUTHENTICATED</code> and <code>AUTHENTICATION_FAILED</code>. For details on authentication errors, query the Login Identity status using <code>GET /login_identity/{login_identity_id}</code>, or the linking session status using <code>{GET /link/fvlink/status/{login_identity_id}</code> (see below).</p>\n</li>\n<li><p><em>Authentication webhooks</em> provide detailed information on 2FA actions required during authentication: <code>event_type</code> = <code>ACTION_REQUIRED</code><strong>.</strong> Please contact <a href=\"https://mailto:support@finverse.com/\">support@finverse.com</a> to turn on authentication webhooks.</p>\n</li>\n</ul>\n<p><strong>Recommended for</strong>: high-volume refresh flows (to minimize unnecessary API requests).</p>\n<h5 id=\"2-poll-login-identity-status\">(2) Poll Login Identity status</h5>\n<p>See <code>GET /login_identity/{login_identity_id}</code>:</p>\n<ul>\n<li>This returns the current Login Identity and data retrieval status (in success cases), as well as a summary <code>error</code> object (in error cases), but does not return any details on 2FA actions required during linking.</li>\n</ul>\n<p><strong>Recommended for</strong>: background refresh flows where your focus is on knowing when data is available to be retrieved (or failed), and you don't need detailed handling of user actions or errors.</p>\n<h5 id=\"3-request-the-linking-session-status\">(3) Request the linking session status</h5>\n<p>See <code>GET /link/fvlink/status/{login_identity_id}</code>.</p>\n<ul>\n<li>This returns detailed information on the linking status, including any actions required or errors encountered.</li>\n</ul>\n<p><strong>Recommended for</strong>: low/mid-volume user-present refresh flows where you want to handle any user actions required (2FA), or any refresh flow where you want to proactively handle errors (e.g. notify users when they need to provide updated credentials).</p>\n<h3 id=\"handling-actions-required-2fa-case\"><strong>Handling actions required (2FA case)</strong></h3>\n<p><em>Note: only applies to user-present refresh mode.</em></p>\n<p>If you receive an <code>action</code> object through authentication webhooks or when requesting the linking/refresh session status (<code>GET /link/fvlink/status/{login_identity_id}</code>), you should as soon as possible direct your user to the <code>link_url</code> returned in the <code>POST /login_identity/refresh</code> response.</p>\n<p>This will open the Finverse Link UI with the required action screen, so the user can complete the additional inputs required to complete authentication.</p>\n<h3 id=\"handling-refresh-authentication-errors-error-case\"><strong>Handling refresh authentication errors (error case)</strong></h3>\n<p>If you receive an error object when requesting the linking/refresh status (<code>GET /link/fvlink/sstatus/{login_identity_id}</code> or <code>GET /login_identity/{login_identity_id}</code>), you should evaluate the error code to determine if the error is temporary or persistent and then decide on the next step.</p>\n<ul>\n<li><p><strong>Temporary errors</strong> (like timeouts and some user errors like invalid 2FA): these can be retried by making another request to <code>POST /login_identity/refresh</code>.</p>\n</li>\n<li><p><strong>Persistent user errors</strong> (like invalid credentials): these cannot be retried through the refresh method. Instead you should request your user to submit new credentials using the relink method (<code>POST /link/token</code>).</p>\n</li>\n<li><p><strong>Persistent non-user errors</strong> (like institution-level or unknown issues): these can be retried through the refresh method, but care should be taken not to retry too many times within short timeframes.</p>\n</li>\n</ul>\n<p>See the documentation section on <strong>Errors &gt; Linking errors</strong> for a list of the errors which are retriable in refresh cases.</p>\n<p>If you wish, you can open the Finverse Link UI to display the error screen to users &amp; inform them of the failure reason.</p>\n<p>Finverse may disable background refreshes for individual institutions if error rates are too high.</p>\n<h3 id=\"fetching-refreshed-data-from-finverse-success-case\"><strong>Fetching refreshed data from Finverse (success case)</strong></h3>\n<p>The linking/refresh status returned using the methods above only cover the authentication step of linking/refreshing a Login Identity.</p>\n<p>Once authentication is successful, data retrieval/refresh will start immediately.</p>\n<p>Refer to the guidance on \"<em>When to fetch data from Finverse</em>\" under \"Login Identity\" to determine when to fetch refreshed data (e.g. either by listening to data webhooks or polling <code>GET /login_identity</code>).</p>\n","_postman_id":"47c3aa7a-0cb8-421e-910b-325736f96cb6"},{"name":"Data Relink","item":[{"name":"/link/token (Generate link_url to Relink with login_identity_token)","event":[{"listen":"test","script":{"id":"38bed9d6-2d7c-4210-9576-45fbcba50227","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","pm.environment.set(\"link_token\", jsonData.access_token);","pm.environment.set(\"link_url\", jsonData.link_url);","","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Access Token or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"access_token\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"access_token\": {\"type\":\"string\"},","            \"expires_in\": {\"type\":\"integer\"},","            \"issued_at\": {\"type\":\"string\"},","            \"link_url\": {\"type\":\"string\"},","            \"token_type\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"access_token\",","            \"expires_in\",","            \"issued_at\",","            \"link_url\",","            \"token_type\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"1f4f175d-646e-4e74-9bf1-0d1f7a71f74d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{login_identity_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"client_id\": \"setup_on_developer_portal\",\n    \"redirect_uri\": \"https://developer.prod.finverse.net/sink\",\n    \"state\": \"setup_on_developer_portal_stateparameter\",\n    \"grant_type\": \"client_credentials\",\n    \"response_mode\": \"form_post\",\n    \"response_type\": \"code\"\n    //\"language\": \"zh\",\n    //\"ui_mode\": \"redirect\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/link/token","description":"<p>Generate a short-lived Finverse Link access_token (link_token) and URL (link_url) to relink a specific Login Identity.</p>\n<p>This relink request example uses the <code>login_identity_token</code> as authorization. Alternatively, use the next request example (supplying a <code>customer_token</code> as authorization, plus a <code>login_identity_id</code>).</p>\n<p>This step is purely a background step (to generate a URL to open Finverse Link). It doesn’t by itself trigger any data retrieval or update.</p>\n<p><strong>Authorization</strong>: <code>login_identity_token</code></p>\n<h1 id=\"request-parameters\">Request parameters</h1>\n<p>Note:<code>redirect_uri</code> must be valid and associated with the <code>client_id</code>.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>client_id</td>\n<td>string, required</td>\n<td>Assigned by Finverse when setting up API credentials in Finverse's customer dashboard (dashboard.finverse.com)</td>\n</tr>\n<tr>\n<td>login_identity_id</td>\n<td>string, conditionally required</td>\n<td>Required if using <code>customer_token</code> for authorization. Login Identity ID being relinked.</td>\n</tr>\n<tr>\n<td>redirect_uri</td>\n<td>string, required</td>\n<td>Finverse Link UI will redirect to this uri after either success or failure</td>\n</tr>\n<tr>\n<td>state</td>\n<td>string, required</td>\n<td>Customer-supplied state (treated as an opaque value), used by customer to uniquely identify the linking session</td>\n</tr>\n<tr>\n<td>grant_type</td>\n<td>string ENUM, required</td>\n<td>Always equal to: <code>client_credentials</code></td>\n</tr>\n<tr>\n<td>response_mode</td>\n<td>string ENUM, required</td>\n<td>Always equal to: <code>form_post</code></td>\n</tr>\n<tr>\n<td>response_type</td>\n<td>string ENUM, required</td>\n<td>Always equal to: <code>code</code></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"optional-parameters\">Optional parameters</h2>\n<p>You can use the following optional parameters to customize the behaviour of Finverse Link's UI during the relinking flow, to fit your implementation requirements.</p>\n<h3 id=\"language\">Language</h3>\n<p>Parameter: <code>language</code></p>\n<p>Description: Specifies the desired language selection for Finverse Link.</p>\n<p>Recommended value: \"\" or any valid language code (based on desired UI). If empty or if an unsupported language is specified, Finverse Link will display the default language (<code>en</code>).</p>\n<p>Accepted values: 2-letter ISO 639-1 alpha-2 code. Supported languages:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>ISO 639-1 alpha-2 code</strong></th>\n<th><strong>Language</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>en</td>\n<td>English  <br /><em>(default)</em></td>\n</tr>\n<tr>\n<td>zh</td>\n<td>Chinese (Traditional)</td>\n</tr>\n<tr>\n<td>vi</td>\n<td>Vietnamese</td>\n</tr>\n</tbody>\n</table>\n</div><p>(note: inputs are case-sensitive)</p>\n<h3 id=\"products-requested\">Products requested</h3>\n<p>Parameter: <code>products_requested</code></p>\n<p>Description: Instructs Finverse to only fetch the products specified in this field. If left empty, Finverse will fetch all data products.</p>\n<p>Recommended value: [ ]</p>\n<p>Accepted values: JSON-array of strings of Finverse products (e.g. <code>[\"ACCOUNTS\", \"TRANSACTIONS\"]</code>)</p>\n<h3 id=\"ui-mode\">UI mode</h3>\n<p>Parameter: <code>ui_mode</code></p>\n<p>Description: Specifies the behaviour of the Finverse Link UI upon completion of the linking flow (in both success or error cases). If left empty, Finverse Link will default to <code>iframe</code> behaviour for the Data institution linking UI.</p>\n<p>Recommended values: any (based on desired UI)</p>\n<p>Accepted values:</p>\n<ul>\n<li><p><code>\"\"</code>: defaults to <code>iframe</code> behaviour for the Data institution linking UI.</p>\n</li>\n<li><p><code>iframe</code>: for use when the Finverse Link UI is launched as an iframe/webview embedded within the customer's application. On success/error, the callback to the customer's <code>redirect_uri</code> is triggered in the background, and the response is silently discarded. Finverse will display an Exit (\"X\") button on each screen and a \"Continue\" button on final success/error screens, allowing the user to close the iframe/webview and return to the customer's application (requires customer's application to handle iframe/webview messages).</p>\n</li>\n<li><p><code>redirect</code>: for use when the Finverse Link UI is launched in a new window/webview. On success/error, the callback isn't triggered immediately, but is bound to the \"Continue\" and \"Exit\" buttons. When the user clicks either button, the UI will navigate to the customer's <code>redirect_uri</code>.</p>\n</li>\n<li><p><code>auto_redirect</code>: similar to <code>redirect</code> mode, for use when the Finverse Link UI is launched in a new window/webview. On success/error, the callback is automatically triggered after 1 second, and the UI navigates to the customer's <code>redirect_uri</code>.</p>\n</li>\n<li><p><code>standalone</code>: for use when the Finverse Link UI is launched in a new window/webview without the need to navigate back to the customer's application. On success/error, the callback to the customer's <code>redirect_uri</code> is triggered in the background, and the response is silently discarded. Finverse will display a \"You may close this window now\" message on final success/error screens, guiding the user to manually close the window/webview.</p>\n</li>\n</ul>\n<h1 id=\"response-fields\">Response fields</h1>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>access_token</td>\n<td>string</td>\n<td>Link session token (referred to as <code>link_token</code>)</td>\n</tr>\n<tr>\n<td>expires_in</td>\n<td>integer</td>\n<td>Token validity length (in seconds)</td>\n</tr>\n<tr>\n<td>issued_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Token issue time</td>\n</tr>\n<tr>\n<td>link_url</td>\n<td>string</td>\n<td>URL to launch the Finverse Link UI flow associated with this <code>link_token</code>, for the end-user to provide required consent and linking inputs.</td>\n</tr>\n<tr>\n<td>token_type</td>\n<td>string ENUM</td>\n<td>Possible values: <code>Bearer</code></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"token-handling\">Token handling</h2>\n<p><strong>Usage</strong>: <code>link_token</code> is intended for use by front-end clients to call the Finverse API. It is included in the <code>link_url</code> to allow the Finverse Link UI to interact with the Finverse backend. It is associated with a specific Customer App (client_id) and Login Identity (via the login_identity_token).</p>\n<p><strong>Renewal</strong>: <code>link_token</code> expires after 15 minutes. Resend the relink request if the token has expired.</p>\n","urlObject":{"path":["link","token"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"857b3b71-e524-4fdd-a1b1-9104d7e2995b","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"client_id\": \"setup_on_developer_portal\",\n    \"redirect_uri\": \"https://developer.prod.finverse.net/sink\",\n    \"state\": \"setup_on_developer_portal_stateparameter\",\n    \"grant_type\": \"client_credentials\",\n    \"response_mode\": \"form_post\",\n    \"response_type\": \"code\",\n    \"language\": \"\",\n    \"products_requested\": [],\n    \"ui_mode\": \"\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/link/token"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1758259474"},{"key":"Date","value":"Fri, 19 Sep 2025 05:24:35 GMT"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"},{"key":"Transfer-Encoding","value":"chunked"}],"cookie":[],"responseTime":null,"body":"{\n    \"access_token\": \"eyJhbGciOiJSUzI1NiIsImtpZCI6Imp3dC9jcnlwdG9LZXlzL2p3dC1rZXkvY3J5cHRvS2V5VmVyc2lvbnMvMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2FwaS5wcm9kLmZpbnZlcnNlLm5ldCIsImF1dG9tYXRpY0RhdGFSZWZyZXNoIjoiT0ZGIiwiY2xpZW50SWQiOiIwMUpOMk01VkZHVFk3NDFZMDU1MTZLMFNYNiIsImN1c3RvbWVyQXBwSWQiOiIwMUpOMk01VkdITjUzS1NTUDdGRzlTMTVSQyIsImN1c3RvbWVyQXBwTmFtZSI6IkZpbnZlcnNlIERlbW8iLCJjdXN0b21pemF0aW9uSWQiOiIiLCJleHAiOjE3NTgyNTk3NzUsImlhdCI6MTc1ODI1OTQ3NSwiaW5zdGl0dXRpb25TdGF0dXMiOiJzdXBwb3J0ZWQiLCJpc3MiOiJmaW52ZXJzZS1wcm9kIiwibGlua01vZGUiOiJyZWFsIHRlc3QiLCJsaW5rVG9rZW5SZXF1ZXN0Ijoie1wiYXV0b21hdGljX2RhdGFfcmVmcmVzaFwiOlwiT0ZGXCIsXCJjbGllbnRfaWRcIjpcIjAxSk4yTTVWRkdUWTc0MVkwNTUxNkswU1g2XCIsXCJjb3VudHJpZXNcIjpudWxsLFwiZ3JhbnRfdHlwZVwiOlwiY2xpZW50X2NyZWRlbnRpYWxzXCIsXCJwcm9kdWN0c19yZXF1ZXN0ZWRcIjpbXSxcInByb2R1Y3RzX3N1cHBvcnRlZFwiOm51bGwsXCJyZWRpcmVjdF91cmlcIjpcImh0dHBzOi8vZGV2ZWxvcGVyLnByb2QuZmludmVyc2UubmV0L3NpbmtcIixcInJlc3BvbnNlX21vZGVcIjpcImZvcm1fcG9zdFwiLFwicmVzcG9uc2VfdHlwZVwiOlwiY29kZVwiLFwic3RhdGVcIjpcIjAxSk4yTTVWR0hONTNLU1NQN0ZHOVMxNVJDX3N0YXRlcGFyYW1ldGVyXCIsXCJ1c2VyX3R5cGVcIjpudWxsfSIsImxvZ2luSWRlbnRpdHlJZCI6IjAxSzVHNlcwNkdUTkc4UUYySlg2UTNNRlc0IiwicHJvZHVjdEZsb3ciOiJEQVRBX1JFVFJJRVZBTCIsInJlYWxFbmFibGVkIjoiZmFsc2UiLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vZGV2ZWxvcGVyLnByb2QuZmludmVyc2UubmV0L3NpbmsiLCJzY29wZSI6ImN1c3RvbWl6YXRpb246Z2V0IGluc3RpdHV0aW9uIGluc3RpdHV0aW9uOmxpbmsgbGlua0FwaTpjcmVhdGUgbGlua0FwaTp1cGRhdGUgZnZMaW5rU3RhdHVzOnJlYWQgcmVsaW5rQXBpOmNyZWF0ZSIsInN1YiI6IjAxSk4yTTVWRkdUWTc0MVkwNTUxNkswU1g2In0.PWvcIvcJlB4b0mOp0AL0-4i3GHXRnd_oLblsaSKFrnUnZgYg3Xe1UjBcTg-nruO8Zk6JGNKShELStru7Ylp-idG3yVcLee-_KHK3iAaS5ZyjcrMt45nQMCnkwBvv5PpvyHmyZY5mdHq9OpW-VBqHByTdjTho-4Wu0caVfU99baA2_YcmP8lSPcf-7GmwlQ-IplmF-HMvD-64pOJOSq-kcRLd1uMmpeSP0Mlp6yzx1XDGO7GJVm-RlUratImhkhHMrRNYx60Uv5NArUsjYWl58Gf22cO3QrP4tkzIf-LE8R3NLiWnmiuLetC7Q8-3qDuVYUEfwd6Kl5bdqPod61Df6EsyKy3fJKUC6PbXtATmgijcefvPmWNWtp5247URepSrseu-2KI2CFWa7IoMgS84wvG0syfVbP8aQ1up_bgt-vU8V5Z2RfNHgCfwHD7ZBha_RMErWxT86twgF7nNk330fjRcWplv0hzy3zz3jwsGQyBtFkxf7PdX0CBO075YjYPXUbWEbV8RAdjkY-ZwYMJk9eu9nh0Cy3j3ksrN7pkBgA63he7HVvWfkYihwhVl9HYN_SOe8HEa8klGnHvRfEs0sVFSesUgKPCrhZWy48_nagkOf1Kv_ed34y1lf2R2KBd4cuGCFf3RlT47pqtR9sVUnI62AXFgRHm9UftK2Q4U_9A\",\n    \"expires_in\": 300,\n    \"issued_at\": \"2025-09-19T05:24:35.000Z\",\n    \"link_url\": \"https://link.prod.finverse.net/onboarding/login/testbank?infoMessage=Use+credentials%3A+User+ID+%3D+usergood+%7C+Password+%3D+datagood&refresh=true&token=eyJhbGciOiJSUzI1NiIsImtpZCI6Imp3dC9jcnlwdG9LZXlzL2p3dC1rZXkvY3J5cHRvS2V5VmVyc2lvbnMvMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2FwaS5wcm9kLmZpbnZlcnNlLm5ldCIsImF1dG9tYXRpY0RhdGFSZWZyZXNoIjoiT0ZGIiwiY2xpZW50SWQiOiIwMUpOMk01VkZHVFk3NDFZMDU1MTZLMFNYNiIsImN1c3RvbWVyQXBwSWQiOiIwMUpOMk01VkdITjUzS1NTUDdGRzlTMTVSQyIsImN1c3RvbWVyQXBwTmFtZSI6IkZpbnZlcnNlIERlbW8iLCJjdXN0b21pemF0aW9uSWQiOiIiLCJleHAiOjE3NTgyNTk3NzUsImlhdCI6MTc1ODI1OTQ3NSwiaW5zdGl0dXRpb25TdGF0dXMiOiJzdXBwb3J0ZWQiLCJpc3MiOiJmaW52ZXJzZS1wcm9kIiwibGlua01vZGUiOiJyZWFsIHRlc3QiLCJsaW5rVG9rZW5SZXF1ZXN0Ijoie1wiYXV0b21hdGljX2RhdGFfcmVmcmVzaFwiOlwiT0ZGXCIsXCJjbGllbnRfaWRcIjpcIjAxSk4yTTVWRkdUWTc0MVkwNTUxNkswU1g2XCIsXCJjb3VudHJpZXNcIjpudWxsLFwiZ3JhbnRfdHlwZVwiOlwiY2xpZW50X2NyZWRlbnRpYWxzXCIsXCJwcm9kdWN0c19yZXF1ZXN0ZWRcIjpbXSxcInByb2R1Y3RzX3N1cHBvcnRlZFwiOm51bGwsXCJyZWRpcmVjdF91cmlcIjpcImh0dHBzOi8vZGV2ZWxvcGVyLnByb2QuZmludmVyc2UubmV0L3NpbmtcIixcInJlc3BvbnNlX21vZGVcIjpcImZvcm1fcG9zdFwiLFwicmVzcG9uc2VfdHlwZVwiOlwiY29kZVwiLFwic3RhdGVcIjpcIjAxSk4yTTVWR0hONTNLU1NQN0ZHOVMxNVJDX3N0YXRlcGFyYW1ldGVyXCIsXCJ1c2VyX3R5cGVcIjpudWxsfSIsImxvZ2luSWRlbnRpdHlJZCI6IjAxSzVHNlcwNkdUTkc4UUYySlg2UTNNRlc0IiwicHJvZHVjdEZsb3ciOiJEQVRBX1JFVFJJRVZBTCIsInJlYWxFbmFibGVkIjoiZmFsc2UiLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vZGV2ZWxvcGVyLnByb2QuZmludmVyc2UubmV0L3NpbmsiLCJzY29wZSI6ImN1c3RvbWl6YXRpb246Z2V0IGluc3RpdHV0aW9uIGluc3RpdHV0aW9uOmxpbmsgbGlua0FwaTpjcmVhdGUgbGlua0FwaTp1cGRhdGUgZnZMaW5rU3RhdHVzOnJlYWQgcmVsaW5rQXBpOmNyZWF0ZSIsInN1YiI6IjAxSk4yTTVWRkdUWTc0MVkwNTUxNkswU1g2In0.PWvcIvcJlB4b0mOp0AL0-4i3GHXRnd_oLblsaSKFrnUnZgYg3Xe1UjBcTg-nruO8Zk6JGNKShELStru7Ylp-idG3yVcLee-_KHK3iAaS5ZyjcrMt45nQMCnkwBvv5PpvyHmyZY5mdHq9OpW-VBqHByTdjTho-4Wu0caVfU99baA2_YcmP8lSPcf-7GmwlQ-IplmF-HMvD-64pOJOSq-kcRLd1uMmpeSP0Mlp6yzx1XDGO7GJVm-RlUratImhkhHMrRNYx60Uv5NArUsjYWl58Gf22cO3QrP4tkzIf-LE8R3NLiWnmiuLetC7Q8-3qDuVYUEfwd6Kl5bdqPod61Df6EsyKy3fJKUC6PbXtATmgijcefvPmWNWtp5247URepSrseu-2KI2CFWa7IoMgS84wvG0syfVbP8aQ1up_bgt-vU8V5Z2RfNHgCfwHD7ZBha_RMErWxT86twgF7nNk330fjRcWplv0hzy3zz3jwsGQyBtFkxf7PdX0CBO075YjYPXUbWEbV8RAdjkY-ZwYMJk9eu9nh0Cy3j3ksrN7pkBgA63he7HVvWfkYihwhVl9HYN_SOe8HEa8klGnHvRfEs0sVFSesUgKPCrhZWy48_nagkOf1Kv_ed34y1lf2R2KBd4cuGCFf3RlT47pqtR9sVUnI62AXFgRHm9UftK2Q4U_9A&ui_mode=iframe\",\n    \"token_type\": \"Bearer\"\n}"}],"_postman_id":"1f4f175d-646e-4e74-9bf1-0d1f7a71f74d"},{"name":"/link/token (ALTERNATIVE: Generate link_url to Relink with customer_token + login_identity_id)","event":[{"listen":"test","script":{"id":"6b2c7576-7231-426f-9856-b62b117d4319","exec":["var jsonData = pm.response.json();","","//SET ENVIRONMENT VARIABLES","pm.environment.set(\"link_token\", jsonData.access_token);","pm.environment.set(\"link_url\", jsonData.link_url);","","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Received Access Token or Error object","pm.test(\"Response has expected keys\", function() {","    pm.expect(jsonData).to.have.any.keys(","        \"access_token\",","        \"error\"","    )","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","            \"access_token\": {\"type\":\"string\"},","            \"expires_in\": {\"type\":\"integer\"},","            \"issued_at\": {\"type\":\"string\"},","            \"link_url\": {\"type\":\"string\"},","            \"token_type\": {\"type\":\"string\"}","        },","        \"required\" : [","            \"access_token\",","            \"expires_in\",","            \"issued_at\",","            \"link_url\",","            \"token_type\"","        ]","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{}}}],"id":"fa2fde4f-1dd9-4c2c-b67c-dd8bb038c21c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"client_id\": \"setup_on_developer_portal\",\n    \"login_identity_id\": \"{{login_identity_id}}\",\n    \"redirect_uri\": \"https://developer.prod.finverse.net/sink\",\n    \"state\": \"setup_on_developer_portal_stateparameter\",\n    \"grant_type\": \"client_credentials\",\n    \"response_mode\": \"form_post\",\n    \"response_type\": \"code\",\n    \"language\": \"\",\n    \"products_requested\": [],\n    \"ui_mode\": \"\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/link/token","description":"<p>Generate a short-lived Finverse Link access_token (link_token) and URL (link_url) to relink a specific Login Identity.</p>\n<p>This relink request example uses the <code>customer_token</code> as authorization, plus a <code>login_identity_id</code>. Alternatively, use the previous request example (supplying a <code>login_identity_token</code> as authorization).</p>\n<p>This step is purely a background step (to generate a URL to open Finverse Link). It doesn’t by itself trigger any data retrieval or update.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code></p>\n<p>See the previous <code>POST /link/token</code> request above for full details on the request &amp; response.</p>\n","urlObject":{"path":["link","token"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"8c067056-dabd-4e4a-a51d-c949285d3149","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"client_id\": \"setup_on_developer_portal\",\n    \"redirect_uri\": \"https://developer.prod.finverse.net/sink\",\n    \"state\": \"setup_on_developer_portal_stateparameter\",\n    \"response_mode\": \"form_post\",\n    \"response_type\": \"code\",\n    \"grant_type\": \"client_credentials\",\n    \"login_identity_id\": \"{{login_identity_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/link/token"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Mon, 16 Sep 2024 01:33:59 GMT"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"},{"key":"Transfer-Encoding","value":"chunked"}],"cookie":[],"responseTime":null,"body":"{\n    \"access_token\": \"{link_token}\",\n    \"expires_in\": 300,\n    \"issued_at\": \"2024-09-16T01:33:59.000Z\",\n    \"link_url\": \"https://link.prod.finverse.net/onboarding/login/testbank?infoMessage=Use+credentials%3A+User+ID+%3D+usergood+%7C+Password+%3D+datagood&refresh=true&token={link_token}&ui_mode=iframe\",\n    \"token_type\": \"Bearer\"\n}"},{"id":"88438a2e-af18-4e2c-8d41-1e5a3671b7bb","name":"Error (missing Login Identity ID)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"client_id\": \"setup_on_developer_portal\",\n    //\"login_identity_id\": \"{{login_identity_id}}\",\n    \"redirect_uri\": \"https://developer.prod.finverse.net/sink\",\n    \"state\": \"setup_on_developer_portal_stateparameter\",\n    \"grant_type\": \"client_credentials\",\n    \"response_mode\": \"form_post\",\n    \"response_type\": \"code\",\n    \"language\": \"\",\n    \"products_requested\": [],\n    \"ui_mode\": \"\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/link/token"},"status":"Bad Request","code":400,"_postman_previewlanguage":null,"header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1758259626"},{"key":"Date","value":"Fri, 19 Sep 2025 05:27:06 GMT"},{"key":"Content-Length","value":"209"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 40003,\n        \"details\": \"The user_id should be provided.\",\n        \"error_code\": \"INVALID_PARAMETER\",\n        \"message\": \"The parameters provided are invalid. See details.\",\n        \"request_id\": \"1758259626\",\n        \"type\": \"API_ERROR\"\n    }\n}"},{"id":"e0a3d539-8fac-456f-badd-7b53a45232c8","name":"Error (invalid Login Identity ID)","originalRequest":{"method":"POST","header":[{"key":"X-Request-Id","value":"1777634238","description":"String, optional. Customer-provided unique ID for the request (useful for debugging purposes)","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"client_id\": \"setup_on_developer_portal\",\n    //\"login_identity_id\": \"{{login_identity_id}}2\",\n    \"redirect_uri\": \"https://developer.prod.finverse.net/sink\",\n    \"state\": \"setup_on_developer_portal_stateparameter\",\n    \"grant_type\": \"client_credentials\",\n    \"response_mode\": \"form_post\",\n    \"response_type\": \"code\",\n    \"language\": \"\",\n    \"products_requested\": [],\n    \"ui_mode\": \"\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.prod.finverse.net/link/token"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":null,"header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"1758259592"},{"key":"Date","value":"Fri, 19 Sep 2025 05:26:32 GMT"},{"key":"Content-Length","value":"211"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"code\": 50001,\n        \"error_code\": \"INTERNAL_SERVER_ERROR\",\n        \"message\": \"We encountered an unexpected error. Please contact customer support for further assistance.\",\n        \"request_id\": \"1758259592\",\n        \"type\": \"API_ERROR\"\n    }\n}"}],"_postman_id":"fa2fde4f-1dd9-4c2c-b67c-dd8bb038c21c"}],"id":"aace8b58-4a48-434f-9a0e-16bb2bc69631","description":"<h3 id=\"data-relink-flow\">Data relink flow</h3>\n<ol>\n<li><p><strong>Initiate a data relink</strong> using <code>POST /link/token</code></p>\n</li>\n<li><p><strong>Open Finverse Link in your user's client</strong> using the <code>link_url</code></p>\n</li>\n<li><p><strong>Finverse Link will directly open the re-authentication flow for the Login Identity</strong> (requesting the user to provide new/updated credentials)</p>\n</li>\n<li><p>From then on linking is similar to first-time linking</p>\n<ol>\n<li><p>You will need to exchange the authentication <code>code</code> from the successful re-linking session to fetch a new <code>access_token</code> and <code>refresh_token</code> for the Login Identity (which should be stored for future refreshes).</p>\n</li>\n<li><p>Data retrieval will start immediate upon successful re-authentication. Monitor the Login Identity's status or data webhooks to identify when additional data is available.</p>\n</li>\n</ol>\n</li>\n</ol>\n<h3 id=\"data-relink-authorization\">Data relink authorization</h3>\n<p>Data relink API requests can be initiated with 2 authorization options:</p>\n<ol>\n<li><p>Use the Login Identity's <code>login_identity_token</code> (access_token) as a bearer token, or</p>\n</li>\n<li><p>Use a <code>customer_token</code> as bearer token, while passing the <code>login_identity_id</code> in the request body.</p>\n</li>\n</ol>\n","_postman_id":"aace8b58-4a48-434f-9a0e-16bb2bc69631"}],"id":"1706ce87-cb0a-4c49-baab-8600e099c4b9","description":"<p>New data can be retrieved on a Login Identity using either the Refresh or the Relink method:</p>\n<ul>\n<li><p>The <strong>Refresh method</strong> allows refreshing data for eligible Login Identities where Finverse has stored authentication inputs/credentials. This method can be used in 2 ways:</p>\n<ul>\n<li><p><strong>User-present refresh</strong>: low-friction refresh method even when 2FA is still required (skipping credentials inputs &amp; using the Finverse Link UI to handle 2FA inputs), or</p>\n</li>\n<li><p><strong>Background refresh</strong>: refresh without any user interaction (only if 2FA is not required).</p>\n</li>\n</ul>\n</li>\n<li><p>The <strong>Relink method</strong> allows refreshes of data for Login Identities where no authentication inputs/credentials are stored, or where new authentication inputs/credentials are required, by guiding the user to resubmit authentication inputs through the Finverse Link UI.</p>\n</li>\n</ul>\n<h2 id=\"implementation-guidance\">Implementation guidance</h2>\n<h3 id=\"1-if-needed-generate-a-new-login_identity_token-access_token\">(1) If needed: Generate a new <code>login_identity_token</code> (access_token)</h3>\n<ul>\n<li><code>POST /auth/token/refresh</code></li>\n</ul>\n<p>The request body should include the <code>login_identity_refresh_token</code>.</p>\n<p>This step is purely an API authentication step (to refresh the access token). It doesn’t by itself trigger any data retrieval or update.</p>\n<p>This new <code>login_identity_token</code> should be used in the following steps.</p>\n<h3 id=\"2-deciding-when-to-use-refresh-vs-relink\">(2) Deciding when to use Refresh vs. Relink</h3>\n<p>See <code>refresh</code> object in <code>GET /login_identity</code>:</p>\n<ul>\n<li><p>If <code>refresh_allowed</code> = <code>TRUE</code>, you can initiate a background refresh of the Login Identity's data without any user-action (see step 3).</p>\n</li>\n<li><p>If <code>refresh_allowed</code> = <code>FALSE</code>, you should instead use the Relink method (see step 4).</p>\n</li>\n</ul>\n<h3 id=\"3-refresh-method-request-a-data-refresh-using-credentials-stored-by-finverse\">(3) Refresh method: request a data refresh using credentials stored by Finverse</h3>\n<ul>\n<li><p>Use <code>POST /login_identity/refresh</code></p>\n</li>\n<li><p>See detailled guidance under \"Data Refresh\" below.</p>\n</li>\n</ul>\n<h3 id=\"4-relink-method-relink-the-login-identity-using-the-finverse-link-ui-requires-end-user-input\">(4) Relink method: relink the Login Identity using the Finverse Link UI (requires end-user input)</h3>\n<ul>\n<li><p>The Relink method should be used to retrieve additional data on a user where <code>refresh_allowed</code>= <code>FALSE</code> (see step 2), or where the Refresh method failed (see step 3).</p>\n</li>\n<li><p>Use <code>POST /link/token</code></p>\n</li>\n<li><p>See detailed guidance under \"Data Relink\" below</p>\n</li>\n</ul>\n","event":[{"listen":"prerequest","script":{"id":"8825af92-82bb-43f3-8345-874569acd864","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"a5effb9d-1ec5-4e93-9b81-9598ae5d7696","type":"text/javascript","exec":[""]}}],"_postman_id":"1706ce87-cb0a-4c49-baab-8600e099c4b9"},{"name":"14 - Testing","item":[{"name":"a. Linking Testing","item":[],"id":"049dcf80-5968-4b4d-ade7-6eed0d16d494","description":"<h3 id=\"testing-overview-authentiction\">Testing overview: authentiction</h3>\n<p>The following test scenarios modify the default Test Bank linking behaviour (happy path) to test various unhappy paths or degraded performance scenarios. These test scenarios can be used to replicate real-life complexity in institution linking/authentication.</p>\n<p>The Test Bank testing scenarios are triggered by passing specified test credentials (username/password) in the Finverse Link UI.</p>\n<h3 id=\"error-list-authentication\">Error list: authentication</h3>\n<p>For a list of all linking authentication errors, refer to the following documentation section: <code>Errors</code> &gt; <code>Linking errors</code>.</p>\n<p>These errors refer to the <code>error</code> codes triggered by the Finverse Link UI callback to your Redirect URI at the end of the failed linking session.</p>\n<h3 id=\"test-scenarios-authentication\">Test scenarios: authentication</h3>\n<p><strong>Applicable institution</strong>: Test Bank (<code>institution_id</code>: <code>testbank</code>)</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Flow</strong></th>\n<th><strong>Test case</strong></th>\n<th><strong>User ID</strong></th>\n<th><strong>Password</strong></th>\n<th><strong>Comments</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Basic login</td>\n<td>Login success</td>\n<td><code>usergood</code></td>\n<td><code>datagood</code></td>\n<td>Successful login</td>\n</tr>\n<tr>\n<td>Basic login</td>\n<td>Login success: with organisation ID input</td>\n<td><code>usergood2</code></td>\n<td><code>datagood</code>  <br />  <br />Org ID: <code>organisationgood</code></td>\n<td>Successful login with org ID input</td>\n</tr>\n<tr>\n<td>Basic login</td>\n<td>Login success: delayed success</td>\n<td><code>usergood</code></td>\n<td><code>delay_30</code></td>\n<td>Forces 30s delay after submitting institution credentials. Customise delay length (s) by specifying: _xx</td>\n</tr>\n<tr>\n<td>Basic login</td>\n<td>Login failure: invalid credentails</td>\n<td><code>usergood</code></td>\n<td><code>wrongpassword</code></td>\n<td>Causes linking to fail with <code>credentials_invalid</code> error in callback.</td>\n</tr>\n<tr>\n<td>OTP login</td>\n<td>Login success</td>\n<td><code>usergood</code></td>\n<td><code>otp_1234</code>  <br />OTP input: <code>1234</code></td>\n<td>Triggers 2FA flow in Finverse Link, requiring user to input OTP. Customise expected OTP value by specifying: <code>_xxxx</code></td>\n</tr>\n<tr>\n<td>OTP login</td>\n<td>Login failure: invalid OTP</td>\n<td><code>usergood</code></td>\n<td><code>otp_1234</code>  <br />  <br />OTP input: any except <code>1234</code></td>\n<td>Causes linking to fail with <code>otp_invalid</code> error in callback</td>\n</tr>\n<tr>\n<td>OTP login</td>\n<td>Login failure: OTP timeout</td>\n<td><code>usergood</code></td>\n<td><code>otp_1234</code>  <br />  <br />OTP input: do not input any value (wait on OTP input screen)</td>\n<td>Causes linking to fail after ~90-120s with <code>otp_timeout</code> error in callback</td>\n</tr>\n<tr>\n<td>Push 2FA login</td>\n<td>Login success</td>\n<td><code>usergood</code></td>\n<td><code>notification_iPhone</code></td>\n<td>Triggers push notification 2FA flow in Finverse Link, simulating user approving a push notification sent to their mobile device. Customise device display name by specifying: <code>_xxxxxx</code></td>\n</tr>\n<tr>\n<td>Push 2FA login</td>\n<td>Login success</td>\n<td><code>usergood</code></td>\n<td><code>select_device</code></td>\n<td>Triggers push notification 2FA flow in Finverse Link, simulating cases when the user has to first select which device the push notification is sent to</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"049dcf80-5968-4b4d-ade7-6eed0d16d494"},{"name":"b. Data Retrieval Testing","item":[],"id":"7fa72f1a-1c50-4dd6-8c55-7cb60038e08c","description":"<h3 id=\"testing-overview-data-retrieval\">Testing overview: data retrieval</h3>\n<p>The following test scenarios modify the default Test Bank data retrieval behaviour (happy path) to test various alternative data paths, unhappy paths and degraded performance scenarios. These test scenarios can be used to replicate real-life complexity in institution data retrieval.</p>\n<p>The Test Bank testing scenarios are triggered by passing specified test credentials (username/password) in the Finverse Link UI.</p>\n<h3 id=\"error-list-data-retrieval\">Error list: data retrieval</h3>\n<p>Refer to the following documentation section: <code>Data API</code> &gt; <code>Login Identity</code> &gt; <code>GET /login_identity</code>.</p>\n<ul>\n<li><p>Data retrieval errors are returned in the Login Identity <code>product_status</code> object: <code>product_status.status</code> and <code>produt_status.status_details</code></p>\n</li>\n<li><p>Refer to the sample responses in <code>GET /login_identity</code> for examples of <code>product_status</code> with a mix of success, error and warning statuses.</p>\n</li>\n</ul>\n<h3 id=\"test-scenarios-data-retrieval\">Test scenarios: data retrieval</h3>\n<p><strong>Applicable institution</strong>: Test Bank (<code>institution_id</code>: <code>testbank</code>)</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Product</strong></th>\n<th><strong>Test case</strong></th>\n<th><strong>User ID</strong></th>\n<th><strong>Password</strong></th>\n<th><strong>Comments</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>All (except Historical Transactions)</td>\n<td>Successful data retrieval: all products except Historical Transactions (PDF parsing)</td>\n<td><code>usergood</code></td>\n<td><code>datagood</code></td>\n<td>Triggers successful data retrieval of all Finverse products, except parsing of transaction data from Statement PDFs.  <br />  <br />Simulates institutions where PDF parsing / Historical Transactions is not supported.</td>\n</tr>\n<tr>\n<td>All (except Statements + Historical Transactions)</td>\n<td>Successful data retrieval: all products except Statements &amp; Historical Transactions (PDF parsing)</td>\n<td><code>nopdf</code></td>\n<td><code>nopdf</code></td>\n<td>Triggers successful data retrieval of all Finverse products except Statements &amp; parsing of transaction data from Statement PDF.  <br />  <br />Simulates institutions where Statements product is not supported.</td>\n</tr>\n<tr>\n<td>All (including Historical Transactions)</td>\n<td>Successful data retrieval: all products including Historical Transactions (PDF parsing)</td>\n<td><code>pdftest</code></td>\n<td><code>pdftest</code></td>\n<td>Triggers successful data retrieval of all Finverse products, including parsing of transaction data from statement PDF files.  <br />  <br />Simulates intitutions where both Statements and Histoircal Transactions are supported.</td>\n</tr>\n<tr>\n<td>Accounts</td>\n<td>Accounts retrieval fails</td>\n<td><code>accountsfail</code></td>\n<td><code>accountsfail</code></td>\n<td>Triggers data retrieval to fail for all account data</td>\n</tr>\n<tr>\n<td>Transactions</td>\n<td>Transactions retrieval fails</td>\n<td><code>transactionsfail</code></td>\n<td><code>transactionsfail</code></td>\n<td>Triggers data retrieval to fail for all transactions data</td>\n</tr>\n<tr>\n<td>Transactions</td>\n<td>No transactions found</td>\n<td>n/a</td>\n<td>n/a</td>\n<td>[No test case available] In real world use, some users may have no transactions available within the institution's transaction history window. If transactions data retrieval appears successful but all of a Login Identity's accounts returned 0 transactions, Finverse will return Login Identity <code>product_status.online_transactions.status</code> = <code>WARNING</code> and <code>.status_details</code> = <code>ONLINE_TRANSACTIONS_NOT_FOUND</code>.</td>\n</tr>\n<tr>\n<td>Cards</td>\n<td>Cards retrieval fails in part</td>\n<td><code>partial_cards</code></td>\n<td><code>partial_cards</code></td>\n<td>Triggers Cards product data retrieval to fail for some credit cards</td>\n</tr>\n<tr>\n<td>Statements</td>\n<td>Statements retrieval fails</td>\n<td><code>pdfinternalfail</code></td>\n<td><code>pdfinternalfail</code></td>\n<td>Triggers data retrieval to fail for all statements</td>\n</tr>\n<tr>\n<td>Statements</td>\n<td>Statements retrieval fails in part</td>\n<td><code>statementpartial</code></td>\n<td><code>doesntmatter</code></td>\n<td>Triggers data retrieval to fail for some statements</td>\n</tr>\n<tr>\n<td>Historical Transactions</td>\n<td>Historical Transactions retrieval fails</td>\n<td><code>pdffail</code></td>\n<td><code>pdffail</code></td>\n<td>Triggers failed parsing of transaction data from all statement PDF files.</td>\n</tr>\n<tr>\n<td>Historical Transactions</td>\n<td>Historical Transactions retrieval fails in part</td>\n<td><code>pdfpartialfail</code></td>\n<td><code>pdfpartialfail</code></td>\n<td>Triggers failed parsing of transaction data from some statement PDF files.</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"7fa72f1a-1c50-4dd6-8c55-7cb60038e08c"}],"id":"b0378b7d-bc95-4aca-869e-b7ef2806c24d","_postman_id":"b0378b7d-bc95-4aca-869e-b7ef2806c24d","description":""}],"id":"6a11d6c4-cf0b-4a46-b2d9-7ecb85315a6f","description":"<h1 id=\"get-started-data-api\">Get Started: Data API</h1>\n<p>After Finverse API authentication, follow these steps to link and retrieve data from your first Institution (e.g. Testbank).</p>\n<h2 id=\"sequence-diagrams-data-api\">Sequence diagrams: Data API</h2>\n<p>Link: <a href=\"https://www.websequencediagrams.com/files/render?link=vOvPIukX6bGrdSm4PJ1fUVOQQB6d02YxR8Qnzn8zTa0FQPpSDZA2Er73AQRGy6qZ\">https://www.websequencediagrams.com/files/render?link=vOvPIukX6bGrdSm4PJ1fUVOQQB6d02YxR8Qnzn8zTa0FQPpSDZA2Er73AQRGy6qZ</a></p>\n<img src=\"https://www.websequencediagrams.com/files/render?link=vOvPIukX6bGrdSm4PJ1fUVOQQB6d02YxR8Qnzn8zTa0FQPpSDZA2Er73AQRGy6qZ\" />\n\n<h2 id=\"a-institution-linking\">A. Institution linking</h2>\n<ol>\n<li><p>Generate a <code>link_token</code> using the <code>customer_token</code> (POST /link/token). The <code>link_token</code> is a short lived, limited-scope token used to initialize Finverse Link (i.e. each time you want an end-user to link a financial institution).</p>\n</li>\n<li><p>Use the Link URL included in the <code>link_token</code> response to launch the Finverse Link UI, which will guide the end-user through selecting an institution and authenticating with it.</p>\n</li>\n<li><p>After the end-user has successfully authenticated with the institution using the Link UI, Finverse will call the <code>redirect_uri</code> with a one-time use <code>code</code> (e.g. <a href=\"https://\">https://example.com/callback?code=linkAuthCode&amp;state=stateparameter</a>). Note: if you are manually launching the Link UI in a browser, you will see the code in the URL parameters on the Link UI success screen.</p>\n</li>\n<li><p>If there was error when linking to institution, Finverse will call the <code>redirect_uri</code> (e.g. <a href=\"https://\">https://example.com/callback?error=credentials_invalid&amp;error_description=The+credentials+you+entered+were+incorrect&amp;error_details=Your+account+may+get+locked+out+after+several+unsuccessful+attempts&amp;state=stateparameter</a>). This error callback will contain the following URL parameters:<br /> * error: Error code<br /> * error_description: Summary description of the error<br /> * error_details: Additional details on the error.</p>\n</li>\n<li><p>Exchange the <code>code</code> for a <code>login_identity_token</code> (POST /auth/token). You should securely store each <code>login_identity_token</code> in your back-end as you will need it to request data.</p>\n</li>\n</ol>\n<p>Note: the <code>login_identity_token</code> is unique for each financial institution linked by the end-user, e.g. an end-user with 2 linked institutions will have a distinct token for each institution.</p>\n<h2 id=\"b-data-retrieval\">B. Data retrieval</h2>\n<p>Request the end-user's data using the end-user's <code>login_identity_token</code>:</p>\n<ul>\n<li><code>GET /[PRODUCT]</code></li>\n</ul>\n<p>Products: <code>accounts</code>, <code>account_numbers</code>, <code>balance_history</code>, <code>identity</code>, <code>statements</code>, <code>transactions</code>.</p>\n<h2 id=\"c-linking-more-institutions\">C. Linking more institutions</h2>\n<p>To link another financial institution for the end-user, repeat from step B(1) onwards (generate <code>link_token</code>). You will end-up with another <code>login_identity_token</code> for the same end-user, representing the additional financial institution.</p>\n<h1 id=\"additional-guidance\">Additional guidance</h1>\n<h2 id=\"embedding-our-link-ui-in-your-webapp\">Embedding our Link UI in your webapp</h2>\n<p>If you are embedding the Finverse Link UI in a webapp, make sure your webapp is accessed via <code>https</code> or <code>localhost</code>. We encrypt end-user credentials client-side before sending them to Finverse servers, using the <code>webcrypto</code> API, which supports only <a href=\"https://\">secure context</a>.</p>\n","_postman_id":"6a11d6c4-cf0b-4a46-b2d9-7ecb85315a6f"},{"name":"Institutions","item":[{"name":"/institutions (Retrieve Institutions list)","event":[{"listen":"test","script":{"id":"0c3dc221-4a53-4b83-ac6c-5d7ebf138908","exec":["var jsonData = pm.response.json();","","//LOG ERRORS & KEY VALUES","if(jsonData.error) {","    console.log(\"error:\", jsonData.error)","};","","","//STANDARD TESTS - START","//HTTP response status","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","//Schema","var Ajv = require('ajv'),","    ajv = new Ajv({logger: console})",";","","if(pm.response.code < 400) {","    var schema = {","        \"type\":\"array\",","        \"items\": {","            \"type\": \"object\",","            \"additionalProperties\": false,","            \"properties\": {","                \"color\": {\"type\":\"string\"},","                \"countries\": {","                    \"type\":\"array\",","                    \"items\": {\"type\": \"string\"}","                },","                \"institution_id\": {\"type\":\"string\"},","                \"institution_name\": {\"type\":\"string\"},","                \"institution_type\": {\"type\":\"string\"},","                \"login_actions\": {","                    \"type\":\"array\",","                    \"items\": {","                        \"type\": \"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"buttons\": {","                                \"type\":\"array\",","                                \"items\": {","                                    \"type\": \"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"name\": {\"type\": \"string\"},","                                        \"type\": {\"type\": \"string\"},","                                        \"value\": {\"type\": \"string\"}     ","                                    },","                                    \"required\": [","                                        \"name\",","                                        \"type\",","                                        \"value\"","                                    ]","                                }","                            },","                            \"fields\": {","                                \"type\":\"array\",","                                \"items\": {","                                    \"type\": \"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"label\": {\"type\": \"string\"},                            ","                                        \"name\": {\"type\": \"string\"},","                                        \"options\": {","                                            \"type\": \"array\",","                                            \"items\": {","                                                \"type\": \"object\",","                                                \"additionalProperties\": false,","                                                \"properties\": {","                                                    \"value\": {\"type\": \"string\"},","                                                    \"label\": {\"type\": \"string\"}","                                                },","                                                \"required\": [","                                                    \"value\",","                                                    \"label\"","                                                ]","                                            }","                                        },","                                        \"placeholder\": {\"type\": \"string\"},","                                        \"type\": {\"type\": \"string\"}","                                    },    ","                                    \"required\": [","                                        \"label\",","                                        \"name\",","                                        \"options\",","                                        \"placeholder\",","                                        \"type\"","                                    ]","                                }","                            },","                            \"messages\": {","                                \"type\":\"array\",","                                \"items\": {","                                    \"type\": \"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"name\": {\"type\": \"string\"},","                                        \"type\": {\"type\": \"string\"},","                                        \"value\": {\"type\": \"string\"}    ","                                    },","                                    \"required\": [","                                        \"name\",","                                        \"type\",","                                        \"value\"","                                    ]","                                }","                            },","                            \"name\": {\"type\":\"string\"},","                            \"type\": {\"type\":\"string\"}","                        },","                        \"required\" : [","                            \"buttons\",","                            \"fields\",","                            \"messages\",","                            \"name\",","                            \"type\"","                        ]","                    }","                },","                \"login_details\": {","                    \"type\": [\"object\", \"null\"],","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"infoMessage\": {\"type\": \"string\"}, // LEGACY field","                        \"info_message\": {\"type\": \"string\"},","                        \"refresh_supported\": {\"type\":\"boolean\"},","                        \"secretRequired\": {\"type\":\"string\"}, // LEGACY field","                        \"secret_required\": {\"type\":\"boolean\"},","                    },","                    \"required\" : [","                        \"refresh_supported\"","                    ],","                },","                \"login_methods\": {","                    \"type\":\"array\",","                    \"items\": {","                        \"type\": \"object\",","                        \"additionalProperties\": false,","                        \"properties\": {","                            \"id\": {\"type\":\"string\"},","                            \"is_default_method\": {\"type\":\"boolean\"},","                            \"login_fields\": {","                                \"type\":\"array\",","                                \"items\": {","                                    \"type\": \"object\",","                                    \"additionalProperties\": false,","                                    \"properties\": {","                                        \"key\": {\"type\":\"string\"},","                                        \"name\": {\"type\":\"string\"},","                                        \"type\": {\"type\":\"string\"}","                                    },","                                    \"required\": [","                                        \"key\",","                                        \"name\",","                                        \"type\"","                                    ]","                                }","                            },","                            \"name\": {\"type\":\"string\"},","                            \"status\": {\"type\":\"string\"}","                        },","                        \"required\" : [","                            \"id\",","                            \"is_default_method\",","                            \"login_fields\",","                            \"name\",","                            \"status\"","                        ]","                    }","                },","                \"login_url\": {\"type\":\"string\"},","                \"parent_institution_name\": {\"type\":\"string\"},","                \"payment_info\": {","                    \"type\": \"object\",","                    \"additionalProperties\": false,","                    \"properties\": {","                        \"currencies_supported\": {","                            \"type\": [\"array\", \"null\"],","                            \"items\": {\"type\": \"string\"},","                            },","                        \"other_info\": {","                            \"type\": \"object\",","                            \"additionalProperties\": false,","                            \"properties\": {","                                \"bank_code\": {\"type\": \"string\"}","                            },","                            \"required\": []","                        },","                        \"payments_supported\": {","                            \"type\": [\"array\", \"null\"],","                            \"items\": {\"type\": \"string\"},","                            },","                    },","                    \"required\": []","                },","                \"portal_name\": {\"type\":\"string\"},","                \"products_supported\": {","                    \"type\":\"array\",","                    \"items\": {\"type\": \"string\"}","                },","                \"status\": {\"type\":\"string\"},","                \"status_details\": {\"type\":\"null\"},","                \"tags\": {","                    \"type\":\"array\",","                    \"items\": {\"type\": \"string\"}","                },","                \"updated_at\": {\"type\":\"string\"},","                \"user_type\": {","                    \"type\":\"array\",","                    \"items\": {\"type\": \"string\"}","                }","            },","            \"required\" : [","                \"countries\",","                \"institution_id\",","                \"institution_name\",","                \"institution_type\",","                \"login_actions\",","                \"login_details\",","                \"login_methods\",","                \"payment_info\",","                \"products_supported\",","                \"status\",","                \"status_details\",","                'tags',","                \"updated_at\",","                \"user_type\"","            ]","        }","    }","};","","if(pm.response.code >= 400) {","    var schema = {","        \"type\":\"object\",","        \"additionalProperties\": false,","        \"properties\": {","           \"error\": {","                \"type\": \"object\",","                \"additionalProperties\": false,","                \"properties\": {","                    \"type\": {\"type\":\"string\"},","                    \"code\": {\"type\":[\"string\", \"number\"]}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"error_code\": {\"type\":\"string\"},","                    \"name\": {\"type\": \"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","                    \"message\": {\"type\":\"string\"},","                    \"details\": {\"type\":\"string\"},","                    \"request_id\": {\"type\":\"string\"}","                },","                \"required\" : [","                    //\"error_code\", //NOT YET ENFORCED","                    \"message\",","                    //\"request_id\", //NOT YET ENFORCED","                    //\"type\" //NOT YET ENFORCED","","                ]","            },","            \"code\": {\"type\":\"number\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","            \"message\": {\"type\":\"string\"}, // LEGACY ERROR RESPONSE (TO BE DEPRECATED)","        },","        \"required\" : [\"error\"]","    }","};","","//Schema validity test","pm.test('Response schema is valid', function() {","  pm.expect(ajv.validate(schema, jsonData), JSON.stringify(ajv.errors)).to.be.true;","});","//STANDARD TESTS - END"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"4298a418-a7f0-4763-819e-2f5fc2240fe5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{customer_token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","description":"<p>String, optional. Customer-provided unique ID for the request (useful for debugging purposes)</p>\n","type":"text"}],"url":"https://api.prod.finverse.net/institutions","description":"<p>Retrieve list of all Institutions.</p>\n<p><strong>Authorization</strong>: <code>customer_token</code> or <code>link_token</code></p>\n<h1 id=\"request-parameters\">Request parameters</h1>\n<h2 id=\"optional-parameters\">Optional parameters</h2>\n<p>You can use the following optional URL parameters to filter the Institutions list returned by Finverse.</p>\n<p>Example: <code>GET /institutions?products_supported=ACCOUNT_NUMBERS</code></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>URL parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>countries</td>\n<td>comma-delimited list</td>\n<td>List of countries associated with the Institution (e.g. <code>countries=SGP,VNM</code>)</td>\n</tr>\n<tr>\n<td>products_supported</td>\n<td>string</td>\n<td>Product(s) supported by the Institution</td>\n</tr>\n<tr>\n<td>institution_type</td>\n<td>string ENUM</td>\n<td>Type of Institution. Accepted values: <code>BANK</code>, <code>WALLET</code>, <code>TEST</code></td>\n</tr>\n</tbody>\n</table>\n</div><h1 id=\"response-fields\">Response fields</h1>\n<p>Full <code>institutions</code> array, containing a list of institutions with institution-level metadata.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>color</td>\n<td>string</td>\n<td>Hex value for the bank's primary color scheme</td>\n</tr>\n<tr>\n<td>countries</td>\n<td>array</td>\n<td>JSON-array of 3-letter ISO-3166-1 Alpha-3 codes (e.g. <code>[\"SGP\", \"VNM\"]</code>)</td>\n</tr>\n<tr>\n<td>institution_id</td>\n<td>string</td>\n<td>ID for each institution</td>\n</tr>\n<tr>\n<td>institution_name</td>\n<td>string</td>\n<td>User-friendly name for each institution</td>\n</tr>\n<tr>\n<td>institution_type</td>\n<td>string</td>\n<td>Possible values: <code>BANK</code>, <code>WALLET</code>, <code>TEST</code></td>\n</tr>\n<tr>\n<td>login_actions</td>\n<td>array</td>\n<td>(Informational) Details on dynamic login actions that may be required by the institution (e.g. 2FA). The Finverse Link UI will dynamically display any login actions. See below.</td>\n</tr>\n<tr>\n<td>login_details</td>\n<td>object, nullable</td>\n<td>Additional details on login requirements for each institution. See below.</td>\n</tr>\n<tr>\n<td>login_methods</td>\n<td>array</td>\n<td>Additional details on login methods &amp; login fields used by each institution. See below.</td>\n</tr>\n<tr>\n<td>login_url</td>\n<td>string, optional</td>\n<td>URL of institution's login portal</td>\n</tr>\n<tr>\n<td>parent_institution_name</td>\n<td>string, optional</td>\n<td>Name of parent institution (if any)</td>\n</tr>\n<tr>\n<td>payment_info</td>\n<td>object</td>\n<td>Additional details on payment methods supported. See below.</td>\n</tr>\n<tr>\n<td>portal_name</td>\n<td>string, optional</td>\n<td>Name of institution's login portal</td>\n</tr>\n<tr>\n<td>products_supported</td>\n<td>array</td>\n<td>JSON-array of Finverse products. Possible values: <code>ACCOUNTS</code>, <code>ACCOUNT_NUMBERS</code>, <code>IDENTITY, STATEMENTS</code>, <code>TRANSACTIONS</code></td>\n</tr>\n<tr>\n<td>status</td>\n<td>enum</td>\n<td>Possible values: <code>ALPHA</code>, <code>BETA</code>, <code>SUPPORTED</code></td>\n</tr>\n<tr>\n<td>status_details</td>\n<td>object, nullable</td>\n<td>Reserved for future use</td>\n</tr>\n<tr>\n<td>tags</td>\n<td>array</td>\n<td>JSON-array of tags applicable to the Institution. Tags can be used to filter real vs. test Institutions in the Finverse Link UI (via the <code>link_mode</code> parameter in <code>POST /link/token</code>). Possible values: <code>real</code>, <code>test</code></td>\n</tr>\n<tr>\n<td>updated_at</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp of the last update to the account's record</td>\n</tr>\n<tr>\n<td>user_type</td>\n<td>enum</td>\n<td>Type of user account supported by the institution. Possible values: <code>BUSINESS</code>, <code>INDIVIDUAL</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"login_actions-array\">login_actions (array)</h3>\n<p>(Informational) Details on dynamic login actions that may be required by the institution (e.g. 2FA). The Finverse Link UI will dynamically display any login actions.</p>\n<p>There are two types of login actions:</p>\n<p>* Actions which require user-input inside the linking flow, e.g. 2FA steps requiring a code-input like SMS OTP or token-based OTP. These are labeled as <code>type</code> = <code>ACTION</code>.<br />* Actions which require the user to take action outside the linking flow, e.g. 2FA steps like push notification approval (in the user's bank app). In these cases the action flow provides an informational message to the user to complete the action step. These are labeled as <code>type</code> = <code>INFO</code>.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>buttons</td>\n<td>array, nullable</td>\n<td>Describes the user-facing buttons to display to enable the user to interact with the requested action. Only used for <code>type</code> = <code>ACTION</code>. See below.</td>\n</tr>\n<tr>\n<td>fields</td>\n<td>array, nullable</td>\n<td>Describes the fields which require user-input. Only used for <code>type</code> = <code>ACTION</code>. See below.</td>\n</tr>\n<tr>\n<td>id</td>\n<td>string (ULID)</td>\n<td>Finverse unique ID for this action message</td>\n</tr>\n<tr>\n<td>messages</td>\n<td>array</td>\n<td>User-facing message(s) to inform the user about what action to take</td>\n</tr>\n<tr>\n<td>name</td>\n<td>string</td>\n<td>A name identifying the login action</td>\n</tr>\n<tr>\n<td>type</td>\n<td>ENUM</td>\n<td>Used to indicate whether the user needs to take action inside the linking flow (ACTION), or outside the linking flow (INFO). Possible values: <code>ACTION</code>, <code>INFO</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"buttons-array\">buttons (array)</h3>\n<p>For a given <code>login_action</code>, describes the user-facing buttons to display to enable the user to interact with the requested action. Only used for <code>type</code> = <code>ACTION</code>.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>string</td>\n<td>Name identifying the button</td>\n</tr>\n<tr>\n<td>type</td>\n<td>ENUM</td>\n<td>Type of button. Possible values: <code>SUBMIT</code></td>\n</tr>\n<tr>\n<td>value</td>\n<td>string</td>\n<td>Button value to be displayed to the user</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"fields-array\">fields (array)</h3>\n<p>For a given <code>login_action</code>, describes the fields which require user-input to enable the user to interact with the requested action. Only used for <code>type</code> = <code>ACTION</code>.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>label</td>\n<td>string</td>\n<td>User-facing label for the field</td>\n</tr>\n<tr>\n<td>name</td>\n<td>string</td>\n<td>Name identifying the field</td>\n</tr>\n<tr>\n<td>options</td>\n<td>array</td>\n<td>List of possible options, from which user needs to select one value. Only used for field <code>type</code> = <code>SELECT</code></td>\n</tr>\n<tr>\n<td>placeholder</td>\n<td>string</td>\n<td>Initial field value to be displayed to the user</td>\n</tr>\n<tr>\n<td>type</td>\n<td>ENUM</td>\n<td>Type of field. Possible values: <code>INPUT</code>, <code>SELECT</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"options-array\">options (array)</h3>\n<p>For a <code>field</code> with <code>type</code>= <code>SELECT</code>, lists the possible options, from which user needs to select one value.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>label</td>\n<td>label</td>\n<td>User-facing label for the option</td>\n</tr>\n<tr>\n<td>value</td>\n<td>string</td>\n<td>Value for the option</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"messages-array\">messages (array)</h3>\n<p>For a given <code>login_action</code>, describes the user-facing message(s) to inform the user about what action to take.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>string</td>\n<td>Name identifying the message</td>\n</tr>\n<tr>\n<td>type</td>\n<td>ENUM</td>\n<td>Type of message. Possible values: <code>TITLE</code>,<code>BODY</code>, <code>HIGHLIGHT</code></td>\n</tr>\n<tr>\n<td>value</td>\n<td>string</td>\n<td>Message value to be displayed to the user</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"login_details-object\">login_details (object)</h3>\n<p>Additional details on login requirements for each institution.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>secretRequired</td>\n<td>boolean, nullable</td>\n<td>Only returned if <code>true</code>. Indicates whether the institution requires a 3rd <code>login_field</code> (key = <code>secret</code>), in addition to the default login_fields (key = <code>username</code> and <code>password</code>). See <code>login_methods</code> object for additional details.</td>\n</tr>\n<tr>\n<td>twoFactorRequired</td>\n<td>boolean, nullable</td>\n<td>(Informational) Only returned if <code>true</code>. Indicates whether the institution requires a mandatory 2FA step for all users during login. Some institutions may also require 2FA steps for some, but not all, users (in those cases <code>twoFactorRequired</code> will be null). See the <code>login_actions</code> object for details on the 2FA steps which may be requested. The Finverse Link UI will dynamically display any 2FA steps.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"login_methods-array\">login_methods (array)</h3>\n<p>Additional details on login methods, containing <code>login_fields</code> for each institution.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>string</td>\n<td>ID of the login method (not unique)</td>\n</tr>\n<tr>\n<td>is_default_method</td>\n<td>boolean</td>\n<td>Indicates the default login method</td>\n</tr>\n<tr>\n<td>login_fields</td>\n<td>array</td>\n<td>Describes the login fields required to authenticate with the institution. See below.</td>\n</tr>\n<tr>\n<td>name</td>\n<td>string</td>\n<td>Name of the login method</td>\n</tr>\n<tr>\n<td>status</td>\n<td>enum</td>\n<td>Indicates whether the login method is supported or still in development. Possible values: <code>ALPHA</code>, <code>BETA</code>, <code>SUPPORTED</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"login_fields-array\">login_fields (array)</h3>\n<p>For a given <code>login_method</code>, describes the login fields required to authenticate with the institution. These represent the minimum login fields required for all users. Additional fields may be required for some users (those will be dynamically displayed in Finverse Link).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>key</td>\n<td>string</td>\n<td>Key for each login field</td>\n</tr>\n<tr>\n<td>name</td>\n<td>string</td>\n<td>User-facing display name for each login field</td>\n</tr>\n<tr>\n<td>type</td>\n<td>string</td>\n<td>Type of each login field. Possible values: <code>hidden</code> (not to be displayed to users), <code>number</code>, <code>password</code>, <code>text</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payment_info-object\">payment_info (object)</h3>\n<p>Additional details on payment methods supported.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>currencies_supported</td>\n<td>array</td>\n<td>List of currencies supported</td>\n</tr>\n<tr>\n<td>other_info</td>\n<td>object</td>\n<td>Additional details, e.g. <code>bank_code</code> in Hong Kong (BETA)</td>\n</tr>\n<tr>\n<td>payments_supported</td>\n<td>array</td>\n<td>List of payment types supported</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["institutions"],"host":["https://api.prod.finverse.net"],"query":[],"variable":[]}},"response":[{"id":"5c0700ef-d91b-468d-a670-acd4e3ec457a","name":"Success (sample)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/institutions"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Wed, 09 Nov 2022 09:36:27 GMT"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"color\": \"#FFFFFF\",\n        \"countries\": [\n            \"HKG\"\n        ],\n        \"institution_id\": \"hsbc-hk\",\n        \"institution_name\": \"HSBC (HK) - Personal\",\n        \"institution_type\": \"BANK\",\n        \"login_actions\": [\n            {\n                \"buttons\": [\n                    {\n                        \"name\": \"buttons_login\",\n                        \"type\": \"SUBMIT\",\n                        \"value\": \"Login\"\n                    }\n                ],\n                \"fields\": [\n                    {\n                        \"label\": \"One Time Password\",\n                        \"name\": \"otp\",\n                        \"options\": [],\n                        \"placeholder\": \"One Time Password\",\n                        \"type\": \"INPUT\"\n                    }\n                ],\n                \"messages\": [\n                    {\n                        \"name\": \"messages_otp_body\",\n                        \"type\": \"BODY\",\n                        \"value\": \"Enter the OTP (one time password) sent to your mobile phone\"\n                    }\n                ],\n                \"name\": \"MOBILE_OTP\",\n                \"type\": \"ACTION\"\n            }\n        ],\n        \"login_details\": {\n            \"secretRequired\": \"true\",\n            \"secret_required\": true\n        },\n        \"login_methods\": [\n            {\n                \"id\": \"PASSWORD\",\n                \"is_default_method\": true,\n                \"login_fields\": [\n                    {\n                        \"key\": \"username\",\n                        \"name\": \"Username\",\n                        \"type\": \"text\"\n                    },\n                    {\n                        \"key\": \"secret\",\n                        \"name\": \"Memorable answer\",\n                        \"type\": \"password\"\n                    },\n                    {\n                        \"key\": \"password\",\n                        \"name\": \"Password\",\n                        \"type\": \"password\"\n                    }\n                ],\n                \"name\": \"Password\",\n                \"status\": \"SUPPORTED\"\n            },\n            {\n                \"id\": \"TOKEN_OTP\",\n                \"is_default_method\": false,\n                \"login_fields\": [\n                    {\n                        \"key\": \"username\",\n                        \"name\": \"Username\",\n                        \"type\": \"text\"\n                    },\n                    {\n                        \"key\": \"secret\",\n                        \"name\": \"Memorable answer\",\n                        \"type\": \"text\"\n                    },\n                    {\n                        \"key\": \"otp\",\n                        \"name\": \"Security Code\",\n                        \"type\": \"text\"\n                    }\n                ],\n                \"name\": \"Security Code\",\n                \"status\": \"ALPHA\"\n            }\n        ],\n        \"login_url\": \"https://www.services.online-banking.hsbc.com.hk/\",\n        \"parent_institution_name\": \"HSBC\",\n        \"payment_info\": {\n            \"currencies_supported\": null,\n            \"other_info\": {\n                \"bank_code\": \"004\"\n            },\n            \"payments_supported\": [\n                \"MANDATE\"\n            ]\n        },\n        \"portal_name\": \"HSBC Personal Account\",\n        \"products_supported\": [\n            \"ACCOUNTS\",\n            \"TRANSACTIONS\",\n            \"STATEMENTS\",\n            \"ACCOUNT_NUMBERS\",\n            \"HISTORICAL_TRANSACTIONS\",\n            \"BALANCE_HISTORY\",\n            \"IDENTITY\",\n            \"PAYMENTS\"\n        ],\n        \"status\": \"SUPPORTED\",\n        \"status_details\": null,\n        \"tags\": [\n            \"real\"\n        ],\n        \"updated_at\": \"2022-07-19T06:47:43.855Z\",\n        \"user_type\": [\n            \"PERSONAL\",\n            \"INDIVIDUAL\"\n        ]\n    },\n    {\n        \"color\": \"#FFFFFF\",\n        \"countries\": [\n            \"HKG\",\n            \"SGP\",\n            \"PHL\"\n        ],\n        \"institution_id\": \"testbank\",\n        \"institution_name\": \"TestBank HK\",\n        \"institution_type\": \"BANK\",\n        \"login_actions\": [\n            {\n                \"buttons\": [\n                    {\n                        \"name\": \"buttons_login\",\n                        \"type\": \"SUBMIT\",\n                        \"value\": \"Login\"\n                    }\n                ],\n                \"fields\": [\n                    {\n                        \"label\": \"One Time Password\",\n                        \"name\": \"otp\",\n                        \"options\": [],\n                        \"placeholder\": \"One Time Password\",\n                        \"type\": \"INPUT\"\n                    }\n                ],\n                \"messages\": [\n                    {\n                        \"name\": \"messages_otp_body_testbank\",\n                        \"type\": \"BODY\",\n                        \"value\": \"Please enter the OTP. Hint: otp_1234\"\n                    }\n                ],\n                \"name\": \"MOBILE_OTP\",\n                \"type\": \"ACTION\"\n            },\n            {\n                \"buttons\": [\n                    {\n                        \"name\": \"buttons_send_notification\",\n                        \"type\": \"SUBMIT\",\n                        \"value\": \"Send Notification\"\n                    }\n                ],\n                \"fields\": [\n                    {\n                        \"label\": \"Select a device\",\n                        \"name\": \"device\",\n                        \"options\": [],\n                        \"placeholder\": \"Select a device\",\n                        \"type\": \"SELECT\"\n                    }\n                ],\n                \"messages\": [\n                    {\n                        \"name\": \"messages_device_selection_approval_title\",\n                        \"type\": \"BODY\",\n                        \"value\": \"Please select the device to send login approval request to\"\n                    }\n                ],\n                \"name\": \"DEVICE_SELECTION\",\n                \"type\": \"ACTION\"\n            },\n            {\n                \"buttons\": [],\n                \"fields\": [],\n                \"messages\": [\n                    {\n                        \"name\": \"messages_sent_to_phone\",\n                        \"type\": \"TITLE\",\n                        \"value\": \"Please approve the login request sent to your phone\"\n                    },\n                    {\n                        \"name\": \"messages_approval_timeout_default\",\n                        \"type\": \"BODY\",\n                        \"value\": \"You will have up to 90 seconds to approve the login request\"\n                    }\n                ],\n                \"name\": \"PUSH_SENT\",\n                \"type\": \"INFO\"\n            },\n            {\n                \"buttons\": [],\n                \"fields\": [],\n                \"messages\": [\n                    {\n                        \"name\": \"messages_sent_to_phone\",\n                        \"type\": \"TITLE\",\n                        \"value\": \"Please approve the login request sent to your phone\"\n                    },\n                    {\n                        \"name\": \"messages_sent_to\",\n                        \"type\": \"BODY\",\n                        \"value\": \"Please approve the login request sent to your phone\"\n                    },\n                    {\n                        \"name\": \"messages_device\",\n                        \"type\": \"HIGHLIGHT\",\n                        \"value\": \"<device>\"\n                    },\n                    {\n                        \"name\": \"messages_approval_timeout_default\",\n                        \"type\": \"BODY\",\n                        \"value\": \"You will have up to 90 seconds to approve the login request\"\n                    }\n                ],\n                \"name\": \"PUSH_SENT\",\n                \"type\": \"INFO\"\n            }\n        ],\n        \"login_details\": {\n            \"infoMessage\": \"Use credentials: User ID = usergood | Password = datagood\",\n            \"info_message\": \"Use credentials: User ID = usergood | Password = datagood\"\n        },\n        \"login_methods\": [\n            {\n                \"id\": \"PASSWORD\",\n                \"is_default_method\": true,\n                \"login_fields\": [\n                    {\n                        \"key\": \"username\",\n                        \"name\": \"User ID\",\n                        \"type\": \"text\"\n                    },\n                    {\n                        \"key\": \"password\",\n                        \"name\": \"Password\",\n                        \"type\": \"password\"\n                    }\n                ],\n                \"name\": \"Password\",\n                \"status\": \"SUPPORTED\"\n            },\n            {\n                \"id\": \"SECRET\",\n                \"is_default_method\": false,\n                \"login_fields\": [\n                    {\n                        \"key\": \"username\",\n                        \"name\": \"User ID\",\n                        \"type\": \"text\"\n                    },\n                    {\n                        \"key\": \"password\",\n                        \"name\": \"Password\",\n                        \"type\": \"password\"\n                    },\n                    {\n                        \"key\": \"secret\",\n                        \"name\": \"Secret\",\n                        \"type\": \"text\"\n                    }\n                ],\n                \"name\": \"Password with secret\",\n                \"status\": \"SUPPORTED\"\n            },\n            {\n                \"id\": \"ORGANISATION_ID\",\n                \"is_default_method\": false,\n                \"login_fields\": [\n                    {\n                        \"key\": \"organisationId\",\n                        \"name\": \"Organisation ID\",\n                        \"type\": \"text\"\n                    },\n                    {\n                        \"key\": \"username\",\n                        \"name\": \"User ID\",\n                        \"type\": \"text\"\n                    },\n                    {\n                        \"key\": \"password\",\n                        \"name\": \"Password\",\n                        \"type\": \"password\"\n                    }\n                ],\n                \"name\": \"Organisation Id\",\n                \"status\": \"SUPPORTED\"\n            }\n        ],\n        \"login_url\": \"https://woauth.dev.finverse.net\",\n        \"parent_institution_name\": \"TEST\",\n        \"payment_info\": {\n            \"currencies_supported\": null,\n            \"other_info\": {},\n            \"payments_supported\": [\n                \"DEBIT_AUTHORIZATION\",\n                \"MANDATE\"\n            ]\n        },\n        \"portal_name\": \"Test Bank Personal Account\",\n        \"products_supported\": [\n            \"ACCOUNTS\",\n            \"TRANSACTIONS\",\n            \"STATEMENTS\",\n            \"ACCOUNT_NUMBERS\",\n            \"IDENTITY\",\n            \"PAYMENTS\"\n        ],\n        \"status\": \"SUPPORTED\",\n        \"status_details\": null,\n        \"tags\": [\n            \"test\"\n        ],\n        \"updated_at\": \"2022-07-19T06:47:43.829Z\",\n        \"user_type\": [\n            \"PERSONAL\",\n            \"INDIVIDUAL\"\n        ]\n    }\n]"},{"id":"805da5b9-5ee0-4922-a582-8f5e6cd4e2a5","name":"Error (invalid or missing bearer token)","originalRequest":{"method":"GET","header":[{"key":"X-Request-Id","value":"1777634238","type":"text"}],"url":"https://api.prod.finverse.net/institutions"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"},{"key":"Vary","value":"Origin"},{"key":"X-Request-Id","value":"{unique_id}"},{"key":"Date","value":"Wed, 21 Sep 2022 15:53:31 GMT"},{"key":"Content-Length","value":"300"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 401,\n    \"error\": {\n        \"code\": \"NOT_AUTHORIZED\",\n        \"details\": \"Invalid bearer token\",\n        \"error_code\": \"NOT_AUTHORIZED\",\n        \"message\": \"Authorization failed. Please review authorization requirements in API documentation.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    },\n    \"message\": \"Invalid bearer token\"\n}"}],"_postman_id":"4298a418-a7f0-4763-819e-2f5fc2240fe5"}],"id":"aca3b684-0673-4b4f-96f2-4df11d29245b","event":[{"listen":"prerequest","script":{"id":"a00faa9c-06e5-4fac-a30a-3bbb20e26ba2","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"ec5d2f47-be65-460f-9ada-bf24fecb635f","type":"text/javascript","exec":[""]}}],"_postman_id":"aca3b684-0673-4b4f-96f2-4df11d29245b","description":""},{"name":"Webhooks","item":[{"name":"Payments webhook events","item":[],"id":"8bd02227-2252-48df-ab5b-975fbcee9cd9","description":"<h3 id=\"payments-webhooks-event_type\">Payments webhooks: <code>event_type</code></h3>\n<h4 id=\"payment-link-events\">Payment Link events</h4>\n<p>The following events fire during the Payment Link lifecycle:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong><code>event_type</code></strong></th>\n<th><strong>Classification</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>PAYMENT_LINK_PAID</code></td>\n<td>Success</td>\n<td>Payment Link successfully paid</td>\n</tr>\n<tr>\n<td><code>PAYMENT_LINK_SETUP_SUCCEEDED</code></td>\n<td>Success</td>\n<td>Payment Link successfully completed in \"Setup mode\" (register a payment method without triggering a payment)</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"payment-user-events\">Payment User events</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong><code>event_type</code></strong></th>\n<th><strong>Classification</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>AUTOPAY_CONSENT_UPDATED</code></td>\n<td>Success</td>\n<td>User's <code>autopay_consent</code> value has been updated. For example:  <br />- User changed their autopay consent by completing a payment link, or  <br />- User's autopay consent value was updated via API: <code>POST /payment_users/{payment_user_id}/</code></td>\n</tr>\n<tr>\n<td><code>AUTOPAY_SETUP_SUCCEEDED</code></td>\n<td>Success</td>\n<td>Autopay successfully setup (i.e. user has consented to autopay, and has a valid payment method)</td>\n</tr>\n<tr>\n<td><code>AUTOPAY_SETUP_CANCELLED</code></td>\n<td>Success</td>\n<td>Autopay successfully cancelled (i.e. user has withdrawn autopay consent and has a valid payment method)</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"payment-events\">Payment events</h4>\n<p>The following events fire during the Payments lifecycle:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong><code>event_type</code></strong></th>\n<th><strong>Classification</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>PAYMENT_SUBMITTED</code></td>\n<td>In Progress</td>\n<td>Payment submitted for execution, now pending response</td>\n</tr>\n<tr>\n<td><code>PAYMENT_EXECUTED</code></td>\n<td>Success</td>\n<td>Payment executed successfully</td>\n</tr>\n<tr>\n<td><code>PAYMENT_FAILED</code></td>\n<td>Error</td>\n<td>Payment failed (on Finverse side)</td>\n</tr>\n<tr>\n<td><code>PAYMENT_REJECTED</code></td>\n<td>Error</td>\n<td>Payment rejected (by external party, e.g. Bank/ Institution)</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"mandate-events\">Mandate events</h4>\n<p>The following events fire during the Mandate lifecycle:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong><code>event_type</code></strong></th>\n<th><strong>Classification</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>MANDATE_SETUP_PROCESSING</code></td>\n<td>In Progress</td>\n<td>End-user completed initial mandate authorization inputs, Finverse will start to process the mandate</td>\n</tr>\n<tr>\n<td><code>MANDATE_SETUP_SUBMITTED</code></td>\n<td>In Progress</td>\n<td>Finverse submitted the Mandate setup request to the Bank/ Institution. This usually happens immediately after <code>MANDATE_SETUP_PROCESSING</code>, however there can be a lag of up to 48 hours if the Bank requires additional authorizations (e.g. 2nd approval for some corporate accounts in Singapore).</td>\n</tr>\n<tr>\n<td><code>MANDATE_SETUP_SUCCEEDED</code></td>\n<td>Success</td>\n<td>Mandate setup succeeded</td>\n</tr>\n<tr>\n<td><code>MANDATE_SETUP_FAILED</code></td>\n<td>Error</td>\n<td>Mandate setup failed with errors</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"8bd02227-2252-48df-ab5b-975fbcee9cd9"},{"name":"Data API - Data webhook events","item":[],"id":"89b01bde-9072-4f18-b47a-2069acc7c074","description":"<h3 id=\"data-webhooks-event_type\">Data webhooks: <code>event_type</code></h3>\n<h4 id=\"authentication-events\">Authentication events</h4>\n<p>These events fire during authentication when an action is required, or when authentication is complete. Note that data retrieval will only begin after authentication is successful.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong><code>event_type</code></strong></th>\n<th><strong>Classification</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>AUTHENTICATED</code></td>\n<td>Success</td>\n<td>Authentication successful. Data retrieval will now start.</td>\n</tr>\n<tr>\n<td><code>AUTHENTICATION_FAILED</code></td>\n<td>Error</td>\n<td>Authentication failed</td>\n</tr>\n<tr>\n<td><code>AUTHENTICATION_TEMPORARILY _UNAVAILABLE_FOR_INSTITUTION</code></td>\n<td>Error</td>\n<td>Temporary issue connecting to the institution -- unable to continue authentication.</td>\n</tr>\n<tr>\n<td><code>AUTHENTICATION_TOO_MANY_ATTEMPTS</code></td>\n<td>Error</td>\n<td>Authentication rate limit exceeded</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"data-retrieval-events\">Data retrieval events</h4>\n<p>These events fire once data retrieval is complete. For Success cases, data can now be retrieved from the relevant Product endpoint. Some data may also be available in Warning cases.</p>\n<p>List of Products firing data retrieval events:</p>\n<ul>\n<li><code>ACCOUNTS</code></li>\n<li><code>ACCOUNT_NUMBERS</code></li>\n<li><code>BALANCE_HISTORY</code></li>\n<li><code>IDENTITY</code></li>\n<li><code>INCOME_ESTIMATION</code></li>\n<li><code>TRANSACTIONS</code>: broken down into <code>ONLINE_TRANSACTIONS</code> (retrieved directly from bank) and <code>HISTORICAL_TRANSACTIONS</code> (extracted from bank statements)<ul>\n<li>e.g. <code>ONLINE_TRANSACTIONS_RETRIEVED</code> and <code>HISTORICAL_TRANSACTIONS_RETRIEVED</code></li>\n</ul>\n</li>\n<li><code>STATEMENTS</code></li>\n</ul>\n<p>Data retrieval events follow the following standard format, for each Product:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong><code>event_type</code></strong></th>\n<th><strong>Classification</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>[PRODUCT]_RETRIEVED</code></td>\n<td>Success</td>\n<td>Data retrieval successful</td>\n</tr>\n<tr>\n<td><code>[PRODUCT]_COMPLETED</code></td>\n<td>Success</td>\n<td>Data processing successful (only applies to <code>INCOME_ESTIMATION</code> Product)</td>\n</tr>\n<tr>\n<td><code>[PRODUCT]_RETRIEVAL_FAILED</code></td>\n<td>Error</td>\n<td>Data retrieval failed</td>\n</tr>\n<tr>\n<td><code>[PRODUCT]_FAILED</code></td>\n<td>Error</td>\n<td>Data processing failed (only applies to <code>INCOME_ESTIMATION</code> Product)</td>\n</tr>\n<tr>\n<td><code>[PRODUCT]_PARTIALLY_RETRIEVED</code></td>\n<td>Warning</td>\n<td>Data retrieval partially successful: some data was retrieved, however some data was not retrieved (e.g. one account could not be processed; transactions for one account not available; transactions or balance history not retrieved for the full expected period; some statements not retrieved). Note: when<code>ACCOUNTS_PARTIALLY_RETRIEVED</code>, the affected Account(s) may also be missing other Products (e.g. Transactions) even if those Products return <code>[PRODUCT_RETRIEVED]</code>.</td>\n</tr>\n<tr>\n<td><code>[PRODUCT]_PARTIALLY_COMPLETED</code></td>\n<td>Warning</td>\n<td>Data processing partially successful (only applies to <code>INCOME_ESTIMATION</code> Product)</td>\n</tr>\n<tr>\n<td><code>[PRODUCT]_NOT_FOUND</code></td>\n<td>Warning</td>\n<td>We did not find any records for this Product for the Login Identity (e.g. no accounts, transactions or statements found for this Login Identity)</td>\n</tr>\n<tr>\n<td><code>[PRODUCT]_NOT_SUPPORTED</code></td>\n<td>Warning</td>\n<td>Institution does not support this Product</td>\n</tr>\n<tr>\n<td><code>[PRODUCT]_TEMPORARILY_UNAVAILABLE_FOR_INSTITUTION</code></td>\n<td>Error</td>\n<td>Temporary issue retrieving data from the institution</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"89b01bde-9072-4f18-b47a-2069acc7c074"},{"name":"Data API - Authentication webhooks (limited access)","item":[],"id":"c7a57268-ffa9-490d-9099-63952aa93b13","description":"<p>Note: for Data API only.</p>\n<p>In addition to general webhooks for authentication and data retrieval updates (see \"Data webook events\"), Finverse provides more detailed authentication webhooks upon request. Please contact <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a> to turn on authentication webhooks.</p>\n<p><strong>Authentication webhooks are intended for customers who need a backend option to resolve authentication status, without relying solely on the success/failure callback at the end of each Finverse Link UI session.</strong> Examples include:</p>\n<ul>\n<li><p><strong>API-based linking flows</strong> (i.e. where the Finverse Link UI is not used)</p>\n</li>\n<li><p><strong>Mobile-native linking flows</strong> (i.e. where user navigation in the Customer's mobile app, such as closing the Customer's mobile app, can break the Finverse Link UI session running as an embedded iframe/webview inside the mobile app).</p>\n</li>\n</ul>\n<p>Currently, authentication webhooks are used to provide details on:</p>\n<ul>\n<li><p><strong>Linking success</strong></p>\n</li>\n<li><p><strong>Action steps</strong> <strong>required</strong> by the end-user (e.g. MFA/2FA steps)</p>\n</li>\n<li><p><strong>Errors encountered</strong>, including: <code>LINKING_ERROR</code> (intended for display to end-users) and <code>API_ERROR</code> (intended for backend handling).</p>\n</li>\n</ul>\n<p><strong>Warning</strong>: authentication webhooks may potentially contain sensitive data or PII (e.g. in the <code>action</code> object) and should be handled securely.</p>\n<h2 id=\"payload\">Payload</h2>\n<p>Finverse's linking webhooks have the following JSON structure:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Format</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>action</td>\n<td>object, optional</td>\n<td>Contains details on any dynamic action required by the institution (e.g. 2FA).  <br />  <br />Only returned for <code>event_type</code> = <code>ACTION_REQUIRED</code>.  <br />  <br />See Action object documentation in <code>GET /link/status/{login_identity_id}</code>.</td>\n</tr>\n<tr>\n<td>code</td>\n<td>string, optional</td>\n<td><strong>(BACKLOG, NOT IMPLEMENTED)</strong> One-time use auth code which can be exchanged for a <code>login_identity_token</code> (via <code>POST /auth/token</code>).  <br />  <br />Only returned for <code>event_type</code> = <code>AUTHENTICATED</code>.  <br />  <br />Note: usually the auth code is returned at the end of a successful Finverse Link UI session, as a URL parameter to the Customer App's redirect URI. The same code is provided here via webhook as a fallback in case the UI callback fails (e.g. because the user drops-off in the UI).</td>\n</tr>\n<tr>\n<td>error</td>\n<td>object, optional</td>\n<td>Returned when linking encountered an error.  <br />  <br />Only returned for <code>event_type</code> = <code>AUTHENTICATION_FAILED</code>, <code>AUTHENTICATION_TEMPORARILY_UNAVAILABLE_FOR_INSTITUTION</code>, or <code>AUTHENTICATION_TOO_MANY_ATTEMPTS</code>.  <br />  <br />See Finverse's documentation on API errors.</td>\n</tr>\n<tr>\n<td>event_time</td>\n<td>datetime (ISO 8301)</td>\n<td>Timestamp when the event was created</td>\n</tr>\n<tr>\n<td>event_type</td>\n<td>string ENUM</td>\n<td>Description of the event. Possible values:  <br />- <code>ACTION_REQUIRED</code>  <br />- <code>AUTHENTICATION_FAILED</code>  <br />- <code>AUTHENTICATION_TEMPORARILY_UNAVAILABLE_FOR_INSTITUTION</code>  <br />- <code>AUTHENTICATION_TOO_MANY_ATTEMPTS</code>  <br />- <code>USER_SESSION_COMPLETED</code>  <br />See below.</td>\n</tr>\n<tr>\n<td>institution_id</td>\n<td>string</td>\n<td>ID for each institution.  <br />  <br />Returned for all <code>event_type</code>, except <code>event_type</code> = <code>ACTION_REQUIRED</code>.</td>\n</tr>\n<tr>\n<td>login_identity_id</td>\n<td>string (ULID)</td>\n<td>Finverse Login Identity ID for the Login Identity that originated the event</td>\n</tr>\n<tr>\n<td>state</td>\n<td>string, optional</td>\n<td>Customer-supplied state (treated as an opaque value), provided to Finverse in <code>POST /link/token</code> (prior to launching Finverse Link). The state is used to uniquely identify the linking session.  <br />  <br />Returned for all <code>event_type</code>, except <code>event_type</code> = <code>ACTION_REQUIRED</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"examples\">Examples</h3>\n<h4 id=\"success-case\">Success case</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    //\"code\": \"01HQ0HC3KBSZEB4WNJYYZ5P6SW\", // NOT IMPLEMENTED (IN BACKLOG)\n    \"event_time\" : \"2022-03-14T06:29:10.8577926Z\",\n    \"event_type\" : \"USER_SESSION_COMPLETED\",\n    \"institution_id\": \"testbank\",\n    \"login_identity_id\" : \"01FY3HVFMGM4CCAHPHZ8SYDEMO\",\n    \"state\": \"customer_supplied_state_parameter\"\n}\n\n</code></pre>\n<h4 id=\"action-required-case\">Action required case</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"action\": {\"{action object}\"},\n    \"event_time\" : \"2022-03-14T06:29:10.8577926Z\",\n    \"event_type\" : \"ACTION_REQUIRED\",\n    \"login_identity_id\" : \"01FY3HVFMGM4CCAHPHZ8SYDEMO\"\n}\n\n</code></pre>\n<h4 id=\"error-case\">Error case</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"error\": {\"{error object}\"},\n    \"event_time\" : \"2022-03-14T06:29:10.8577926Z\",\n    \"event_type\" : \"AUTHENTICATION_FAILED\",\n    \"institution_id\": \"testbank\",\n    \"login_identity_id\" : \"01FY3HVFMGM4CCAHPHZ8SYDEMO\",\n    \"state\": \"customer_supplied_state_parameter\"\n}\n\n</code></pre>\n<h3 id=\"events-types\">Events types</h3>\n<h4 id=\"linking-events\">Linking events</h4>\n<p>These events fire during institution linking when an action is required, when linking is successful or when an error is encountered.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong><code>event_type</code></strong></th>\n<th><strong>Classification</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Recommended handling</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>USER_SESSION_COMPLETED</code></td>\n<td>Success</td>\n<td>Authentication successful, data retrieval will now start in the background.</td>\n<td>(1) Front-end: refer to error_type. (i) error_type = LINKING_ERROR: display error message to end-users (to allow them to identify resolutions steps); (ii) error_type = API_ERROR: display generic error message to end-users (e.g. suggesting them to retry later).  <br />(2) Back-end: after an error, linking attempts for the same user_id and institution_id should be undertaken via the relink flow (POST /link/relink/{login_identity_id}) instead of starting a new linking session (POST /link). This will avoid creating duplicate login_identity_id for the same institution connection.</td>\n</tr>\n<tr>\n<td><code>ACTION_REQUIRED</code></td>\n<td>In progress</td>\n<td>Login action is required to continue authentication. Refer to <code>action</code> object in the webhook payload.</td>\n<td><strong>(1) Front-end</strong>: display <code>action</code> to end-user, and collect any required inputs.  <br /><strong>(2) Back-end</strong>: submit end-user's <code>action</code> inputs to<code>POST /link/action/{login_identity_id}</code> to continue linking process.</td>\n</tr>\n<tr>\n<td><code>AUTHENTICATION_FAILED</code></td>\n<td>Error</td>\n<td>Authentication failed. Refer to <code>error</code> object in the webhook payload.</td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"c7a57268-ffa9-490d-9099-63952aa93b13"}],"id":"e26735a3-8d86-44dc-995d-dad3ed16f86d","description":"<p>Finverse supports webhooks to notify Customer Apps of:</p>\n<ul>\n<li><p><strong>Payments API</strong>: updates to Payment Links, Mandates and Payments.</p>\n</li>\n<li><p><strong>Data API</strong>: updates to Institution authentication and data retrieval.</p>\n</li>\n</ul>\n<h2 id=\"steps-to-receive-webhooks\">Steps to receive webhooks</h2>\n<ol>\n<li><p>Create webhook endpoint(s) as HTTPS endpoints (URL) on your local server</p>\n</li>\n<li><p>Handle POST requests from Finverse and return a <code>200</code> response code</p>\n</li>\n<li><p>Deploy your webhook endpoint(s) so they are publicly accessible</p>\n</li>\n<li><p>Register your webhook endpoint(s):</p>\n<ol>\n<li><p><strong>Payments API</strong>: contact Finverse support.</p>\n</li>\n<li><p><strong>Data API</strong>: in the Finverse developer dashboard</p>\n</li>\n</ol>\n</li>\n</ol>\n<h2 id=\"payload\">Payload</h2>\n<p>Webhooks have the following JSON structure:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Format</strong></th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>error</td>\n<td>object, optional</td>\n<td>Error details when an error is encountered. Only returned for the following <code>event_types</code>: authentication, mandates, payments. Refer to Finverse's documentation on Errors.</td>\n</tr>\n<tr>\n<td>event_id</td>\n<td>string (ULID), optional</td>\n<td>Unique identifier for each event. <em>Note: currently only returned for Payment webhooks.</em></td>\n</tr>\n<tr>\n<td>event_time</td>\n<td>string (ISO 8601 timestamp: date-time)</td>\n<td>Timestamp when the event was created</td>\n</tr>\n<tr>\n<td>event_type</td>\n<td>string ENUM</td>\n<td>Description of the event. See sections on \"Data webhook details\" and \"Payment webhook details\".</td>\n</tr>\n<tr>\n<td>external_user_id</td>\n<td>string, conditional</td>\n<td>Customer App's unique ID for the user associated with the event. <em>Note: only returned for Payment webhooks.</em></td>\n</tr>\n<tr>\n<td>login_identity_id</td>\n<td>string (ULID), conditional</td>\n<td>Finverse Login Identity ID associated with the event. <em>Note: only returned for Data webhooks.</em></td>\n</tr>\n<tr>\n<td>mandate_id</td>\n<td>string (ULID), conditional</td>\n<td>Finverse Mandate ID associated with the event. <em>Note: only returned for Payment webhooks associated with a mandate. Other webhooks may return an empty value.</em></td>\n</tr>\n<tr>\n<td>metadata</td>\n<td>object, conditional</td>\n<td>Metadata associated with the payment event. <em>Note: only returned for Payment webhooks, when</em> <code>_event_type_</code> <em>starts with</em> <code>_PAYMENT__</code> <em>(excluding Payment Link webhooks).</em></td>\n</tr>\n<tr>\n<td>payment_id</td>\n<td>string (ULID), conditional</td>\n<td>Finverse Payment ID associated with the event. <em>Note: only returned for Payments webhooks.</em></td>\n</tr>\n<tr>\n<td>payment_link_id</td>\n<td>string (ULID), conditional</td>\n<td>Finverse Payment Link ID associated with the event. <em>Note: only returned for Payments webhooks, when</em> <code>_event_type_</code> <em>starts with</em> <code>_PAYMENT_LINK__</code><em>.</em></td>\n</tr>\n<tr>\n<td>payment_method_id</td>\n<td>string (ULID), conditional</td>\n<td>Finverse Payment Method ID associated with the event. <em>Note: only returned for Payments associated with a stored payment method. Other webhooks may return an empty value.</em></td>\n</tr>\n<tr>\n<td>unique_reference_id</td>\n<td>string, conditional</td>\n<td>Customer-supplied string uniquely identifying the payment to be collected. <em>Note: only returned for Payments webhooks, when</em> <code>_event_type_</code> <em>starts with</em> <code>_PAYMENT_LINK__</code><em>.</em></td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>string (ULID), conditional</td>\n<td>Finverse Payment User ID associated with the event. <em>Note: only returned for Payments webhooks.</em></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"examples\">Examples</h2>\n<h3 id=\"payment-webhooks\"><strong>Payment webhooks</strong></h3>\n<h4 id=\"successful-payment-link-payment-mode\"><strong>Successful payment link (PAYMENT mode)</strong></h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"event_id\": \"01GDYWJ8JX5DY3XQNHH6TJ12BC\",\n    \"event_time\": \"2023-05-01T07:11:17.085032861Z\",\n    \"event_type\": \"PAYMENT_LINK_PAID\",\n    \"external_user_id\": \"customer_provided_user_id\",\n    \"payment_id\": \"01GDYWJVAFNDNZB80SNTFN30RG\",\n    \"payment_link_id\": \"01GXWBRR6QM4VR5KV63VZTABC1\",\n    \"payment_method_id\": \"01GDYWJ6QZ657D7SXTFYABCA12\",\n    \"unique_reference_id\": \"2023-05-01-ABC1234567890\",\n    \"user_id\": \"01HW2DADRJDDV0VG4AAV89AS9K\"\n}\n\n</code></pre>\n<h4 id=\"successful-payment-link-setup-mode\"><strong>Successful payment link (SETUP mode)</strong></h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"event_id\": \"01GDYWJ8JX5DY3XQNHH6TJ12BC\",\n    \"event_time\": \"2023-05-01T07:11:17.085032861Z\",\n    \"event_type\": \"PAYMENT_LINK_SETUP_SUCCEEDED\",\n    \"external_user_id\": \"customer_provided_user_id\",\n    \"payment_link_id\": \"01GXWBRR6QM4VR5KV63VZTABC1\",\n    \"payment_method_id\": \"01GDYWJ6QZ657D7SXTFYABCA12\",\n    \"unique_reference_id\": \"2023-05-01-ABC1234567890\",\n    \"user_id\": \"01HW2DADRJDDV0VG4AAV89AS9K\"\n}\n\n</code></pre>\n<h4 id=\"successful-autopay-setup\">Successful autopay setup</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"event_id\": \"01GDYWJ8JX5DY3XQNHH6TJ12BC\",\n    \"event_time\": \"2023-05-01T07:11:17.085032861Z\",\n    \"event_type\": \"AUTOPAY_SETUP_SUCCEEDED\",\n    \"external_user_id\": \"customer_provided_user_id\",\n    \"payment_method_id\": \"01HMFXCSEF79F5RMEWYWSTQKX0\",\n    \"user_id\": \"01GDYWJVAFNDNZB80SNTFN30RG\"\n}  \n\n</code></pre>\n<h4 id=\"payment-submitted-awaiting-async-processing-or-reconciliation\">Payment submitted (awaiting async processing or reconciliation)</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"event_id\": \"01GDYWJ8JX5DY3XQNHH6TJ34AC\",\n    \"event_time\": \"2022-09-27T07:11:19.085032861Z\",\n    \"event_type\": \"PAYMENT_SUBMITTED\",\n    \"external_user_id\": \"customer_provided_user_id\",\n    \"mandate_id\": \"\",\n    \"metadata\": {\n      \"key\": \"value\"\n    },\n    \"payment_id\": \"01HW4TH46ES4MG5TVBXGE1CF3Y\",\n    \"payment_method_id\": \"\",\n    \"user_id\": \"01HMFXCSD4X7SB5X9TNNA81WSZ\"\n}\n\n</code></pre>\n<h4 id=\"successful-payment\">Successful payment</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"event_id\": \"01GDYWJVJ59EQ23C8Z1GKH7EFP\",\n    \"event_time\": \"2022-09-27T07:11:36.473860035Z\",\n    \"event_type\": \"PAYMENT_EXECUTED\",\n    \"external_user_id\": \"customer_provided_user_id\",\n    \"mandate_id\": \"01GDYWJ6QZ657D7SXTFYBAVA66\",\n    \"metadata\": {\n      \"key\": \"value\"\n    },\n    \"payment_id\": \"01GDYWJVAFNDNZB80SNTFN30RG\",\n    \"payment_method_id\": \"01HMFXCSEF79F5RMEWYWSTQKX0\",\n    \"user_id\": \"01HMFXCSD4X7SB5X9TNNA81WSZ\"\n}\n\n</code></pre>\n<h4 id=\"failed-or-rejected-payment\">Failed or rejected payment</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"error\": {\n        \"details\": \"\",\n        \"error_code\": \"INTERNAL_SERVER_ERROR\",\n        \"message\": \"We encountered an internal error. Please contact Finverse customer support for further assistance.\",\n        \"type\": \"API_ERROR\"\n    },\n    \"event_id\": \"01GDYWTRMYJ95C625VDX24BP46\",\n    \"event_time\": \"2022-09-27T07:15:55.65083856Z\",\n    \"event_type\": \"PAYMENT_REJECTED\", // OR: PAYMENT_FAILED\n    \"external_user_id\": \"customer_provided_user_id\",\n    \"mandate_id\": \"01GDYWTKFF12GD9DN5Q23FZJ97\",\n    \"metadata\": {\n      \"key\": \"value\"\n    },\n    \"payment_id\": \"01GDYWTREF36W6H5EJ5M509PQ1\",\n    \"payment_method_id\": \"01HMFXCSEF79F5RMEWYWSTQKA1\",\n    \"user_id\": \"01HMFXCSD4X7SB5X9TNNA81WSZ\"\n}\n\n</code></pre>\n<h4 id=\"mandate-setup-submitted-to-bank-for-async-processing\">Mandate setup submitted to bank (for async processing)</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"event_id\": \"01GDYWJ8JX5DY3XQNHH6TJ34AB\",\n    \"event_time\": \"2022-09-27T07:11:18.085032861Z\",\n    \"event_type\": \"MANDATE_SETUP_SUBMITTED\",\n    \"external_user_id\": \"customer_provided_user_id\",\n    \"mandate_id\": \"01GDYWJ6QZ657D7SXTFYBAVA66\",\n    \"payment_method_id\": \"01HMFXCSEF79F5RMEWYWSTQKX0\",\n    \"user_id\": \"01HMFXCSD4X7SB5X9TNNA81WSZ\"\n}\n\n</code></pre>\n<h4 id=\"successful-mandate-setup\">Successful mandate setup</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"event_id\": \"01GDYWJ8JX5DY3XQNHH6TJ34RY\",\n    \"event_time\": \"2022-09-27T07:11:17.085032861Z\",\n    \"event_type\": \"MANDATE_SETUP_SUCCEEDED\",\n    \"external_user_id\": \"customer_provided_user_id\",\n    \"mandate_id\": \"01GDYWJ6QZ657D7SXTFYBAVA66\",\n    \"payment_method_id\": \"01HMFXCSEF79F5RMEWYWSTQKX0\",\n    \"user_id\": \"01HMFXCSD4X7SB5X9TNNA81WSZ\"\n}\n\n</code></pre>\n<h3 id=\"data-webhooks\">Data webhooks</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"error\": {},\n    \"event_time\" : \"2022-03-14T06:29:10.8577926Z\",\n    \"event_type\" : \"AUTHENTICATED\",\n    \"login_identity_id\" : \"01FY3HVFMGM4CCAHPHZ8SYDEMO\"\n}\n\n</code></pre>\n<h2 id=\"webhook-handling\">Webhook handling</h2>\n<h4 id=\"retry-logic\">Retry logic</h4>\n<p>Webhooks use a fire and forget model. There is <strong>no retry policy,</strong> so there is no guarantee that every webhook will be delivered successfully.</p>\n<h4 id=\"event-order\">Event order</h4>\n<p>There is no guarantee that delivery order is the same as event generation time. You should not expect received events to be in order, and should instead handle ordering explicitly based on the <code>event_time</code> (i.e. event generation time).</p>\n<h4 id=\"signature-verification-optional-recommended-for-payments-webhooks\">Signature verification <strong>(optional; recommended for payments webhooks)</strong></h4>\n<p>Each webhook is signed via the <code>FV-Signature</code> header (base64 encoded string). Finverse generates the signature by signing the webhook payload using the <code>EC_SIGN_P256_SHA256</code> algorithm.</p>\n<p>To verify the signature, you need the webhook <code>payload</code>, <code>signature</code> and Finverse <code>public key</code>.</p>\n<p><strong>Finverse public key:</strong></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEuZId/6U0gKLodSihwC/EuMGtULx8\nG3r7X7nZ3KWO5uNVtRTC64MH/1faq9zRp/2iIjCT8erSxiyO6y8wnlqMqw==\n-----END PUBLIC KEY-----\n\n</code></pre><p><strong>Sample signature verification implementation</strong> (in Golang):</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-go\">import {\n  \"crypto/ecdsa\"\n  \"crypto/sha256\"\n  \"crypto/x509\"\n  \"encoding/asn1\"\n  \"encoding/pem\"\n}\n  payloadInByte := {webhook payload} // e.g. []byte(\"{\"id\":\"123\"}\")\n  signatureInByte := {webhook signature}... // e.g. base64.RawStdEncoding.DecodeString(\"{base64 encoded signature in header:FV-Signature}\")\n  publicKeyInPem := {Finverse public key}\n// Parse the public key. Note, this example assumes the public key is in the ECDSA format\n  block, _ := pem.Decode([]byte(publicKeyInPem))\n  publicKey, err := x509.ParsePKIXPublicKey(block.Bytes)\n  if err != nil {\n    error\n  }\n  ecKey, ok := publicKey.(*ecdsa.PublicKey)\n  if !ok {\n    error\n  }\n// Verify Elliptic Curve signature.\n  var parsedSig struct{ R, S *big.Int }\n  if _, err = asn1.Unmarshal(signatureInByte, &amp;parsedSig); err != nil {\n    error\n  }\n  digest := sha256.Sum256(payloadInByte)\n  if !ecdsa.Verify(ecKey, digest[:], parsedSig.R, parsedSig.S) {\n    error\n  }\n\n</code></pre>\n","_postman_id":"e26735a3-8d86-44dc-995d-dad3ed16f86d"},{"name":"Errors","item":[{"name":"API errors","item":[],"id":"e1c5c877-bb36-4892-b155-77f5da8f71e0","description":"<h2 id=\"general-errors-any-endpoint\">General errors (any endpoint)</h2>\n<h3 id=\"idempotency_key_in_use\">IDEMPOTENCY_KEY_IN_USE</h3>\n<p><em>Idempotency key is reused with a different request</em></p>\n<p><strong>Relevant endpoints</strong>: any endpoint accepting an idempotency key (typically payment-related endpoints)</p>\n<p><strong>Common causes</strong>: the request is reusing an idempotency key but the request does not match the first request's API endpoint and parameters.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"details\": \"\",\n        \"error_code\": \"IDEMPOTENCY_KEY_IN_USE\",\n        \"message\": \"The idempotency key provided is currently being used in another request. This occurs if your integration is making duplicate requests simultaneously. Please check our documentation and try again.\",\n        \"request_id\": \"{request_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n<h3 id=\"internal_server_error\">INTERNAL_SERVER_ERROR</h3>\n<p><em>Internal server error</em></p>\n<p><strong>Relevant endpoints</strong>: any</p>\n<p><strong>Common causes</strong>: an unexpected error occured. Please contact Finverse to debug: <a href=\"https://mailto:support@finverse.com\">support@finverse.com</a>.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 500 Internal Server Error\n\"error\": {       \n    \"details\": \"Encountered an internal server error while trying to refresh the token.\",\n        // details depend on the server error context   \n    \"error_code\": \"INTERNAL_SERVER_ERROR\", \n    \"message\": \"An unexpected error occurred.\",\n        // message may vary, e.g. \"We encountered an internal error. Please contact Finverse customer support for further assistance.\"\n    \"request_id\": \"[request_id]\",\n    \"type\": \"API_ERROR\"\n }\n\n</code></pre>\n<h3 id=\"invalid_input\">INVALID_INPUT</h3>\n<p><em>Invalid value for at least one parameter</em></p>\n<p><strong>Relevant endpoints</strong>: any</p>\n<p><strong>Common causes</strong>: the request included at least one field with a valid format but invalid value. Refer to <code>details</code> in the error object for guidance on the parameter(s) containing invalid inputs. For example:</p>\n<ul>\n<li>Failed to find the requested parameter value (e.g. an \"institution_id\" or \"mandate_id\" is submitted with a valid format, but the look-up for that value fails on the backend)</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"details\": \"Invalid redirect_uri value. Verify your redirect_uri.\",\n            // details depend on the field that contains invalid inputs, for example:\n                // \"institution_id associated with the sender_account_id is invalid. Please create a new Sender Account or contact customer support.\"\n        \"error_code\": \"INVALID_INPUT\",\n        \"message\": \"Invalid parameter value(s). Please review parameter inputs.\",\n        \"request_id\": \"[request_id]\",\n        \"type\": \"API_ERROR\"\n    }\n\n</code></pre>\n<h3 id=\"invalid_parameter\">INVALID_PARAMETER</h3>\n<p><em>Request validation failed</em></p>\n<p><strong>Relevant endpoints</strong>: any</p>\n<p><strong>Common causes</strong>: the request included an invalid or improperly formatted field. Refer to <code>details</code> in the error object for guidance on the parameter(s) that failed validation. For example:</p>\n<ul>\n<li>Request is missing a required field</li>\n<li>Field format is invalid (invalid type, length, etc.)</li>\n<li>Field value is not one of expected ENUM values</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"details\": \"client_id in body should be at least 26 chars long\",\n            // details depend on the field that failed validation, for example:\n                // \"user_id is required\"\n                // \"user_id cannot be empty\"\n                // \"recipient_account.account_type should be one of [EXTERNAL_ACCOUNT]\"\n        \"error_code\": \"INVALID_PARAMETER\",\n        \"message\": \"The parameters provided are invalid. See details.\",\n        \"request_id\": \"[request_id]\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n<h3 id=\"method_not_allowed\">METHOD_NOT_ALLOWED</h3>\n<p><em>Invalid HTTP request method</em></p>\n<p><strong>Relevant endpoints</strong>: any</p>\n<p><strong>Common causes</strong>: the HTTP request method is not allowed for this endpoint.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 405 Method Not Allowed\n{\n    \"error\": {\n        \"details\": \"method POST is not allowed, but [GET] are\"\n            // details depend on the methods allowed\n        \"error_code\": \"METHOD_NOT_ALLOWED\",\n        \"message\": \"Incorrect HTTP method used. See details.\",\n        \"request_id\": \"[request_id]\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n<h3 id=\"not_authorized\">NOT_AUTHORIZED</h3>\n<p><em>Authentication or authorization failed</em></p>\n<p><strong>Relevant endpoints</strong>: any endpoint requiring a valid bearer token</p>\n<p><strong>Common causes</strong>: the bearer token is missing from the request, or it is invalid (e.g. expired).</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 401 Unauthorized\n{\n    \"error\": {\n        \"details\": \"Invalid bearer token\",\n             // details depend on the authorization method        \n        \"error_code\": \"NOT_AUTHORIZED\",\n        \"message\": \"Authorization failed. Please review authorization requirements in API documentation.\",\n        \"request_id\": \"[request_id]\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n<h3 id=\"path_not_found\">PATH_NOT_FOUND</h3>\n<p><em>Path invalid</em></p>\n<p><strong>Relevant endpoints</strong>: any</p>\n<p><strong>Common causes</strong>: the requested URL does not exist.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 404 Not Found\n{\n    \"error\": {\n        \"details\": \"path /auth/customer/token2 was not found\",\n             // details depend on the invalid path\n        \"error_code\": \"PATH_NOT_FOUND\",\n        \"message\": \"The provided path was not found\",\n        \"request_id\": \"[request_id]\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n<h3 id=\"resource_not_found\">RESOURCE_NOT_FOUND</h3>\n<p><em>Resource cannot be found</em></p>\n<p><strong>Relevant endpoints</strong>: any</p>\n<p><strong>Common causes</strong>: the requested resource <code>id</code> does not exist, has been deleted, or is not accessible (e.g. is not authorized for this Customer App).</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"details\": \"payment_id cannot be found\",\n            //details depend on the resource id that cannot be found\n        \"error_code\": \"RESOURCE_NOT_FOUND\",\n        \"message\": \"Resource cannot be found. Resource does not exist, has been deleted, or is not accessible.\",\n        \"request_id\": \"[request_id]\",\n        \"type\": \"API_ERROR\"\n    }\n\n</code></pre>\n<h3 id=\"token_error\">TOKEN_ERROR</h3>\n<p><em>Bearer token is malformed or invalid</em></p>\n<p><strong>Relevant endpoints</strong>: any</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"details\": \"Bearer token should contain client_app_id claim\",\n        \"error_code\": \"TOKEN_ERROR\",\n        \"message\": \"Token provided is malformed or invalid for other reasons. Please generate a new token or contact customer support if the issue persists.\",\n        \"request_id\": \"{request_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n<h2 id=\"endpoint-specific-errors\">Endpoint-specific errors</h2>\n<h3 id=\"invalid_client_credentials\">INVALID_CLIENT_CREDENTIALS</h3>\n<p><em>Client credentials failed authentication</em></p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><code>POST /auth/customer/token</code></li>\n<li><code>POST /link/token</code></li>\n<li><code>POST /auth/token</code></li>\n</ul>\n<p><strong>Common causes</strong>: API keys are not valid for the environment being used (e.g. <code>client_id</code> or <code>client_secret</code> value is invalid)</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"code\": \"INVALID_CLIENT_CREDENTIALS\",\n        \"message\": \"The client credentials are invalid. Please verify client_id or client_secret inputs.\",\n        \"request_id\": \"[request_id]\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n<h3 id=\"invalid_grant\">INVALID_GRANT</h3>\n<p><em>Unable to complete authorization grant</em></p>\n<p><strong>Relevant endpoints</strong>: <code>POST /auth/token</code></p>\n<p><strong>Common causes</strong>: <code>code</code> parameter value is invalid, expired, or has already been used.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"details\": \"Invalid code.\",\n        \"error_code\": \"INVALID_GRANT\",\n        \"message\": \"One or more authorization parameters is invalid, expired or revoked. Please review parameter inputs.\",\n        \"request_id\": \"[request_id]\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n<h3 id=\"not_cancellable\">NOT_CANCELLABLE</h3>\n<p><em>Requested resource cannot be cancelled</em></p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>POST /payment_links/{id}/cancel</code></p>\n</li>\n<li><p><code>POST /payouts/{id}/cancel</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: The requested payment link, payment method or payment is currently processing, and cannot be cancelled at this time.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"details\": \"Payment link cannot be cancelled (status: IN_PROGRESS)\"\n            //details depend on the resource that cannot be cancelled\n        \"error_code\": \"NOT_CANCELLABLE\",\n        \"message\": \"Cancellation not allowed\",\n        \"request_id\": \"[request_id]\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n<h3 id=\"unsupported_grant_type\">UNSUPPORTED_GRANT_TYPE</h3>\n<p><code>_grant_type_</code> <em>value is unsupported</em></p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><code>POST /auth/customer/token</code></li>\n<li><code>POST /link/token</code></li>\n<li><code>POST /auth/token</code></li>\n</ul>\n<p><strong>Common causes</strong>: Invalid <code>grant_type</code> value</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"UNSUPPORTED_GRANT_TYPE\",\n        \"message\": \"Invalid grant_type. Please review allowed parameter values in API documentation.\",\n        \"request_id\": \"[request_id]\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n","_postman_id":"e1c5c877-bb36-4892-b155-77f5da8f71e0"},{"name":"Payment Product errors","item":[],"id":"7ca12975-ef7e-448c-a964-802e34013046","description":"<h3 id=\"payment_authorization_failed\">PAYMENT_AUTHORIZATION_FAILED</h3>\n<p><em>Payment authorization failed</em></p>\n<p><strong>Relevant payment types</strong>: any payment type</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>GET /mandates</code></p>\n</li>\n<li><p><code>GET /mandates/{mandate_id}</code></p>\n</li>\n<li><p><code>POST /payments</code></p>\n</li>\n<li><p><code>GET /payments/{payment_id}</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: (i) For card-based payments: card information is invalid, or charge authorization is being rejected due to a card-specific reason (e.g. card temporarily locked/frozen), (ii) For mandate-based payments: Sender accountholder name, account number or identity information is invalid.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_AUTHORIZATION_FAILED\",\n        \"message\": \"Payment authorization failed\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"Please review the payment method or accountholder information you provided and try again. (Error details: {gateway_error_code} {gateway_error_description})\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_blocked\">PAYMENT_BLOCKED</h3>\n<p><em>Payment has been blocked by Finverse or a payment processor.</em></p>\n<p><strong>Relevant payment types</strong>: any payment type</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>POST /payments</code></p>\n</li>\n<li><p><code>GET /payments/{payment_id}</code></p>\n</li>\n<li><p><code>POST /payouts/scheduled</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: Payment has been flagged for potential fraud.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_BLOCKED\",\n        \"message\": \"Payment blocked\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"Please use a different payment method.\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_currency_unauthorized\">PAYMENT_CURRENCY_UNAUTHORIZED</h3>\n<p><em>Payment currency is not compatible with the debit authorization currency</em></p>\n<p><strong>Relevant payment types</strong>: any payment type</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>POST /payments</code></p>\n</li>\n<li><p><code>GET /payments/{payment_id}</code></p>\n</li>\n<li><p><code>POST /payouts/scheduled</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: Different currencies were specified when creating the mandate and payment/payout.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_CURRENCY_UNAUTHORIZED\",\n        \"message\": \"The currency is not authorized in the mandate. Please use an authorized currency.\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_identity_verification_failed\">PAYMENT_IDENTITY_VERIFICATION_FAILED</h3>\n<p><em>Payment or payment method setup has been blocked by Finverse or a payment processor due to incorrect identity information.</em></p>\n<p><strong>Relevant payment types</strong>: Mandate payments (i.e. direct debit)</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>GET /mandates</code></p>\n</li>\n<li><p><code>GET /mandates/{mandate_id}</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: Accountholder name of the sender account does not match the sender's name.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_IDENTITY_VERIFICATION_FAILED\",\n        \"message\": \"Identity verification failed\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"Account holder identity does not match information provided by the biller. Please try again or contact customer support..\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_insufficient_funds\">PAYMENT_INSUFFICIENT_FUNDS</h3>\n<p><em>Insufficient funds in sender's bank account</em></p>\n<p><strong>Relevant payment types</strong>: any payment type</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>POST /payments</code></p>\n</li>\n<li><p><code>GET /payments/{payment_id}</code></p>\n</li>\n<li><p><code>POST /payout_instructions</code></p>\n</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_INSUFFICIENT_FUNDS\",\n        \"message\": \"Insufficient funds\",\n        \"type\": \"PAYMENT_ERROR\",\n         \"details\": \"Payment method does not have sufficient funds. Please add funds to your payment method and try again. (Error details: {gateway_error_code} {gateway_error_description})\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_limits_exceeded\">PAYMENT_LIMITS_EXCEEDED</h3>\n<p><em>Payment limits exceeded</em></p>\n<p><strong>Relevant payment types</strong>: any payment type</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>POST /payments</code></p>\n</li>\n<li><p><code>GET /payments/{payment_id}</code></p>\n</li>\n<li><p><code>POST /payout_instructions</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: Payment exceeds limits allowed by the payment method (either amount per transaction, or total amount/number of transactions for the current period). For Mandate payments, refer to mandate's <code>mandate_details.transaction_limits</code> for the specific limits allowed by the mandate.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_LIMITS_EXCEEDED\",\n        \"message\": \"Payment limits exceeded\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"You have reached the maximum total payment value or count for this period, or the payment amount exceeds your transaction limit. Please try a different amount or try again later.\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_mandate_authorization_incomplete\">PAYMENT_MANDATE_AUTHORIZATION_INCOMPLETE</h3>\n<p><em>Debit authorization cannot be completed due to some missing authorization inputs</em></p>\n<p><strong>Relevant payment types</strong>: Mandate payments (i.e. direct debit)</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><code>POST /mandates/{id}/authorize</code></li>\n</ul>\n<p><strong>Common causes</strong>: Customer or end-user hasn't provided all the information needed (e.g. sender details, consent) to authorize the mandate</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_MANDATE_AUTHORIZATION_INCOMPLETE\",\n        \"message\": \"Mandate authorization is incomplete\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"We are missing the following information needed to authorize this Mandate: consent\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_mandate_cancelled_by_institution\">PAYMENT_MANDATE_CANCELLED_BY_INSTITUTION</h3>\n<p><em>Debit authorization cancelled by sender institution</em></p>\n<p><strong>Relevant payment types</strong>: Mandate payments (i.e. direct debit)</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>POST /payments</code></p>\n</li>\n<li><p><code>GET /payments/{payment_id}</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: The user cancelled the debit authorization (e.g. through their institution's internet banking).</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_MANDATE_CANCELLED_BY_INSTITUTION\",\n        \"message\": \"Debit authorization cancelled\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"Your institution has cancelled your debit authorization. Please set up a new debit authorization. (Error details: {bank_provided_error_description} {bank_provided_error_description})\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_mandate_expired\">PAYMENT_MANDATE_EXPIRED</h3>\n<p><em>Debit authorization's end date has already passed.</em></p>\n<p><strong>Relevant payment types</strong>: Mandate payments (i.e. direct debit)</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>POST /payments</code></p>\n</li>\n<li><p><code>GET /payments/{payment_id}</code></p>\n</li>\n<li><p><code>POST /payouts/scheduled</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: Today's date is later than the end date requested when setting up the mandate.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"error\": {\n        \"error_code\": \"PAYMENT_MANDATE_EXPIRED\",\n        \"message\": \"Cannot create payment because the referred mandate has expired.\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_mandate_locked\">PAYMENT_MANDATE_LOCKED</h3>\n<p><em>Debit authorization is currently being processed and cannot be modified/retried</em></p>\n<p><strong>Relevant payment types</strong>: Mandate payments (i.e. direct debit)</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>POST /mandates/link</code></p>\n</li>\n<li><p><code>POST /mandates/{id}/authorize</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: End-user has already confirmed the debit authorization and the mandate is now being processed, so the authorization flow cannot be retried.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_MANDATE_LOCKED\",\n        \"message\": \"The mandate cannot be interacted with at the time being because there are other processes underway that requires the mandate to be unchanged.\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_mandate_not_effective\">PAYMENT_MANDATE_NOT_EFFECTIVE</h3>\n<p><em>Debit authorization's effective date has not yet started</em></p>\n<p><strong>Relevant payment types</strong>: Mandate payments (i.e. direct debit)</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>POST /payments</code></p>\n</li>\n<li><p><code>GET /payments/{payment_id}</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: Today's date is earlier than the start date requested when setting up the mandate.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_MANDATE_NOT_EFFECTIVE\",\n        \"message\": \"Debit authorization not effective\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"Your required debit authorization is not yet in effect. Please try again later, or set up a new debit authorization. (Error details: {bank_provided_error_code} {bank_provided_error_description})\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_mandate_rejected\">PAYMENT_MANDATE_REJECTED</h3>\n<p><em>Mandate setup rejected by sender's bank</em></p>\n<p><strong>Relevant payment types</strong>: Mandate payments (i.e. direct debit)</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>GET /mandates</code></p>\n</li>\n<li><p><code>GET /mandates/{mandate_id}</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: Accountholder details (name, ID number, account number) provided by the sender do not match the bank's records (i.e. similar reasons to <code>PAYMENT_AUTHORIZATION_FAILED)</code>.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_MANDATE_REJECTED\",\n        \"message\": \"Debit authorization rejected\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"Debit authorization rejected by your institution. Please try again, or contact your institution's customer support. (Error details: {bank_provided_error_code} {bank_provided_error_description})\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_mandate_status_invalid\">PAYMENT_MANDATE_STATUS_INVALID</h3>\n<p><em>Mandate status does not allow a payment to be made</em></p>\n<p><strong>Relevant payment types</strong>: Mandate payments (i.e. direct debit)</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>POST /payments</code></p>\n</li>\n<li><p><code>GET /payments/{payment_id}</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: Mandate is incomplete, has not yet been authorized, or is still being processed.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_MANDATE_STATUS_INVALID\",\n        \"message\": \"The mandate has not been setup properly. Please check our documentation and try again.\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_method_expired\">PAYMENT_METHOD_EXPIRED</h3>\n<p><em>Payment method has expired.</em></p>\n<p><strong>Relevant payment types</strong>: Card payments</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>GET /payments</code></p>\n</li>\n<li><p><code>GET /payments/{payment_id}</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: Card has expired.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_METHOD_EXPIRED\",\n        \"message\": \"Payment method expired\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"Please use a different payment method.\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_method_invalid\">PAYMENT_METHOD_INVALID</h3>\n<p><em>Payment method is no longer valid (e.g. has been closed or frozen).</em></p>\n<p><strong>Relevant payment types</strong>: Card payments</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>GET /payments</code></p>\n</li>\n<li><p><code>GET /payments/{payment_id}</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: Payment method has been closed, frozen or reported stolen.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_METHOD_INVALID\",\n        \"message\": \"Invalid payment method\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"Your payment method is invalid, closed or frozen. Please use a different payment method.\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_not_received\">PAYMENT_NOT_RECEIVED</h3>\n<p><em>Manual payment (e.g. FPS payment) not received</em></p>\n<p><strong>Relevant payment types</strong>: Manual bank payments (e.g. FPS)</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>GET /payments</code></p>\n</li>\n<li><p><code>GET /payments/{payment_id}</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: The user did not complete the manual payment, or Finverse is unable to match the payment information submitted by the user (e.g. sender accountholder name / account number) to the payments it received.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_NOT_RECEIVED\",\n        \"message\": \"Payment not received\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"We are unable to confirm receipt of this payment. Please verify that the payment was sent, and that the payment information provided was correct (e.g. sender accountholder name / account number). If you have verified that the payment was sent, please contact Finverse customer support (support@finverse.com).\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_rate_limit_exceeded\">PAYMENT_RATE_LIMIT_EXCEEDED</h3>\n<p><em>Request rate limited by Finverse or a payment processor.</em></p>\n<p><strong>Relevant payment types</strong>: any payment type</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>POST /mandates</code></p>\n</li>\n<li><p><code>GET /mandates/{mandate_id}</code></p>\n</li>\n<li><p><code>POST /payments</code></p>\n</li>\n<li><p><code>GET /payments/{payment_id}</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: Too many payment requests. This can occur because you or other merchants have made too many requests to the same payment processor.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_RATE_LIMIT_EXCEEDED\",\n        \"message\": \"Payment rate limit exceeded\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"The payments processor has temporarily rate limited this request due to a high volume of requests. Please try again in a few minutes. (Error details: {gateway_error_code} {gateway_error_description})\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_rejected\">PAYMENT_REJECTED</h3>\n<p><em>Payment rejected by sender's institution</em></p>\n<p><strong>Relevant payment types</strong>: any payment type</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>POST /payments</code></p>\n</li>\n<li><p><code>GET /payments/{payment_id}</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: Sender account closed, or sender account has insufficient funds.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_REJECTED\",\n        \"message\": \"Payment rejected\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"Payment rejected by your payment method. Please verify that you have sufficient funds available and try again, or contact your payment method's customer support. (Error details: {gateway_error_code} {gateway_error_description})\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_retries_exceeded\">PAYMENT_RETRIES_EXCEEDED</h3>\n<p><em>Payment request blocked due to too many failed payment attempts</em></p>\n<p><strong>Relevant payment types</strong>: any payment type</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>GET /payments</code></p>\n</li>\n<li><p><code>GET /payments/{payment_id}</code></p>\n</li>\n</ul>\n<p><strong>Common causes</strong>: Payment method has had too many failed payment attempts (usually due to insuffiicent funds, or a closed/frozen payent method)</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_RETRIES_EXCEEDED\",\n        \"message\": \"Too many payment retry attempts\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"You have reached the maximum number of payment retries allowed for this period. Please try again later or use a different payment method.\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_system_error\">PAYMENT_SYSTEM_ERROR</h3>\n<p><em>Payment system-level error</em></p>\n<p><strong>Relevant payment types</strong>: any payment type</p>\n<p><strong>Relevant endpoints</strong>: any payment, mandate or payout endpoint</p>\n<p><strong>Common causes</strong>: Finverse internal system error</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_SYSTEM_ERROR\",\n        \"message\": \"Payment system error\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"An unexpected error occurred. Please contact customer support. (Error details: {gateway_error_code} {gateway_error_description})\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payment_temporary_error\">PAYMENT_TEMPORARY_ERROR</h3>\n<p><em>Temporary payment error</em></p>\n<p><strong>Relevant payment types</strong>: any payment type</p>\n<p><strong>Relevant endpoints</strong>: any payment, mandate or payout endpoint</p>\n<p><strong>Common causes</strong>: Payment system timing out; service is temporarily down.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYMENT_TEMPORARY_ERROR\",\n        \"message\": \"Temporary error\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"Payment service is temporarily unavailable. Please try again later. (Error details: {gateway_error_code} {gateway_error_description})\"\n    }\n}\n\n</code></pre>\n<h3 id=\"payout_rejected\">PAYOUT_REJECTED</h3>\n<p><em>Payment rejected by the recipient's institution</em></p>\n<p><strong>Relevant payment types</strong>: Payouts</p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><code>POST /payouts/scheduled</code></li>\n</ul>\n<p><strong>Common causes</strong>: Recipient's account details are invalid, or recipient account is frozen/closed.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PAYOUT_REJECTED\",\n        \"message\": \"Payout rejected\",\n        \"type\": \"PAYMENT_ERROR\",\n        \"details\": \"Payout rejected by the receiving institution. Please verify that the recipient's account details are correct and try again, or contact the recipient to confirm their account is able to receive payment.\"\n    }\n}\n\n</code></pre>\n","_postman_id":"7ca12975-ef7e-448c-a964-802e34013046"},{"name":"Data Product errors","item":[],"id":"826badc3-fe04-4b50-bd72-7ca811abc07f","description":"<h2 id=\"general-errors-multiple-products\">General errors (multiple products)</h2>\n<h3 id=\"product_not_supported\">PRODUCT_NOT_SUPPORTED</h3>\n<p><strong>Relevant endpoints</strong>: any Product endpoint (Accounts, Account Numbers, Balance History, Composite Statement, Identity, Income, Statements, Transactions)</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"details\": \"Balance history is not supported for this bank\",\n            // details depend on the product that is not supported\n        \"error_code\": \"PRODUCT_NOT_SUPPORTED\",\n        \"message\": \"Requested product is not yet supported for this institution. Please refer to Institutions list for details on products supported.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n<h3 id=\"account_not_found\">ACCOUNT_NOT_FOUND</h3>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><p><code>GET /accounts/{account_id}</code></p>\n</li>\n<li><p><code>GET /account_numbers/{account_id}</code></p>\n</li>\n<li><p><code>GET /balance_history/{accountId}</code></p>\n</li>\n<li><p><code>GET /transactions/{account_id}</code></p>\n</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"ACCOUNT_NOT_FOUND\",\n        \"message\": \"account_id cannot be found. Resource does not exist, has been deleted, or is no longer accessible.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n<h2 id=\"account-numbers\">Account Numbers</h2>\n<h3 id=\"account_number_unavailable\">ACCOUNT_NUMBER_UNAVAILABLE</h3>\n<p><strong>Relevant endpoints</strong>: <code>GET /account_numbers/{account_id}</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"ACCOUNT_NUMBERS_UNAVAILABLE\",\n        \"message\": \"No account numbers are associated with the requested account(s). We may not be able to retrieve account numbers for this account type, or there may have been an error retrieving account numbers for this account (please review product_status for details).\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n<h2 id=\"balance-history\">Balance History</h2>\n<h3 id=\"balance_history_unavailable\">BALANCE_HISTORY_UNAVAILABLE</h3>\n<p><strong>Relevant endpoints</strong>: <code>GET /balance_history/{accountId}</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{ \n  \"error\": {\n    \"code\": 40101, \n    \"message\": \"Balance history not available for this accountId\",\n    \"name\": \"BALANCE_HISTORY_UNAVAILABLE\"\n  }\n}\n\n</code></pre>\n<h2 id=\"composite-statement\">Composite Statement</h2>\n<h3 id=\"product_not_ready\">PRODUCT_NOT_READY</h3>\n<p><strong>Relevant endpoints:</strong> <code>GET /composite_statement</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"PRODUCT_NOT_READY\",\n        \"message\": \"Requested product is not yet ready. Please review product_status or try again later.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n<h3 id=\"composite_statement-error\">COMPOSITE_STATEMENT: ERROR</h3>\n<p><strong>Relevant endpoints:</strong> <code>GET /composite_statement</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n  \"Appcode\": 500, \n  \"ErrorText\": \"Error GenerateCompositeStatement\"\n}\n\n</code></pre>\n<h2 id=\"identity\">Identity</h2>\n<h3 id=\"identity_unavailable\">IDENTITY_UNAVAILABLE</h3>\n<p><strong>Relevant endpoints:</strong> <code>GET /identity</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n\"error\": {\n    \"error_code\": \"IDENTITY_UNAVAILABLE\",\n    \"message\": \"No identity information is associated with the requested Login Identity. We may not be able to retrieve identity for this user type, or there may have been an error retrieving identity for this user (please review product_status for details).\",\n    \"request_id\": \"{unique_id}\",\n    \"type\": \"API_ERROR\"\n}\n\n</code></pre>\n<h2 id=\"income\">Income</h2>\n<h3 id=\"income_estimate_not_found\">INCOME_ESTIMATE_NOT_FOUND</h3>\n<p><strong>Relevant endpoints:</strong> <code>GET /income</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{ \n  \"error\": {\n    \"code\": 40004, \n    \"message\": \"Income estimate not found\",\n    \"name\": \"INCOME_ESTIMATE_NOT_FOUND\"\n  }\n}  \n\n</code></pre>\n<h3 id=\"income_estimation_not_supported\">INCOME_ESTIMATION_NOT_SUPPORTED</h3>\n<p><strong>Relevant endpoints:</strong> <code>GET /income</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{ \n  \"error\": {\n    \"code\": 40004, \n    \"message\": \"Income estimation is not yet supported for this institution\",\n    \"name\": \"INCOME_ESTIMATON_NOT_SUPPORTED\"\n  }\n}\n\n</code></pre>\n<h2 id=\"statements\">Statements</h2>\n<h3 id=\"statements-error\">STATEMENTS: ERROR</h3>\n<p><strong>Relevant endpoints:</strong> <code>GET /statements</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{ \n  \"Appcode\": 500, \n  \"ErrorText\": \"Error getting statements from service\"\n}\n\n</code></pre>\n<h3 id=\"statement_not_found\">STATEMENT_NOT_FOUND</h3>\n<p><strong>Relevant endpoints:</strong> <code>GET /statements/{statement_id}</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{\n    \"error\": {\n        \"error_code\": \"STATEMENT_NOT_FOUND\",\n        \"message\": \"statement_id cannot be found. Resource does not exist, has been deleted, or is no longer accessible.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n<h3 id=\"statement-error\">STATEMENT: ERROR</h3>\n<p><strong>Relevant endpoints:</strong> <code>GET /statements/{statement_id}</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{ \n  \"Appcode\": 500, \n  \"ErrorText\": \"Error getting statement from service\"\n}\n\n</code></pre>\n","_postman_id":"826badc3-fe04-4b50-bd72-7ca811abc07f"},{"name":"Login Identity errors","item":[],"id":"7a088cd1-9d61-4251-872d-c0cd327fa499","description":"<h2 id=\"endpoint-specific-errors\">Endpoint-specific errors</h2>\n<h3 id=\"login_identity_not_found\">LOGIN_IDENTITY_NOT_FOUND</h3>\n<p><em>Login Identity resource not found</em></p>\n<p><strong>Relevant endpoints</strong>:</p>\n<ul>\n<li><code>GET /login_identity/{login_identity_id}</code></li>\n<li><code>POST /login_identity/refresh</code></li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 404 Not Found\n{\n    \"error\": {\n        \"error_code\": \"LOGIN_IDENTITY_NOT_FOUND\",\n        \"message\": \"login_identity_id cannot be found. Resource does not exist, has been deleted, or is no longer accessible.\",\n        \"request_id\": \"[request_id]\",\n        \"type\": \"API_ERROR\"\n    }\n}\n\n</code></pre>\n<h3 id=\"login_identity_credentials_not_stored\">LOGIN_IDENTITY_CREDENTIALS_NOT_STORED</h3>\n<p><em>Unable to find stored credentials needed for background data refresh</em></p>\n<p><strong>Relevant endpoints</strong>: <code>POST /login_identity/refresh</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{ \n  \"error\": {\n    \"code\": 40005, \n    \"message\": \"Login Identity Credentials are not stored\",\n    \"name\": \"LOGIN_IDENTITY_CREDENTIALS_NOT_STORED\"\n}  \n\n</code></pre>\n<h3 id=\"login_identity_busy\">LOGIN_IDENTITY_BUSY</h3>\n<p><em>Login Identity cannot accept refresh request, due to refresh or relink already in process.</em></p>\n<p><strong>Relevant endpoints</strong>: <code>POST /login_identity/refresh</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{ \n  \"error\": {\n    \"code\": 40020, \n    \"message\": \"Login Identity Is Busy\",\n    \"name\": \"LOGIN_IDENTITY_BUSY\"\n  }\n}  \n\n</code></pre>\n<h3 id=\"login_identity_error_state\">LOGIN_IDENTITY_ERROR_STATE</h3>\n<p><em>Other Login Identity-related error</em></p>\n<p><strong>Relevant endpoints</strong>: <code>POST /login_identity/refresh</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">HTTP status code: 400 Bad Request\n{ \n  \"error\": {\n    \"code\": 40009, \n    \"message\": \"Error state\", \n      // message depends on the underlying error \n    \"name\": \"LOGIN_IDENTITY_ERROR_STATE\"\n  }\n}\n\n</code></pre>\n","_postman_id":"7a088cd1-9d61-4251-872d-c0cd327fa499"},{"name":"Linking errors","item":[],"id":"d0068c89-a729-4e51-8e1f-9a34a61f72f8","description":"<h1 id=\"linking-errors-via-finverse-link-ui\">Linking errors (via Finverse Link UI)</h1>\n<h2 id=\"endpoint-specific-errors\">Endpoint-specific errors</h2>\n<h3 id=\"linking-status\">Linking status</h3>\n<p>The following errors are returned during Institution linking. These are communicated to the <code>redirect_uri</code> (in the <code>location</code> header), and to the <code>webhook_uri</code> (if using webhooks).</p>\n<p>Linking errors can be classified into 4 categories:</p>\n<ul>\n<li><p><strong>\"User action required\" errors</strong></p>\n</li>\n<li><p><strong>Temporary errors</strong></p>\n</li>\n<li><p><strong>Persistent errors</strong></p>\n</li>\n<li><p><strong>\"Link UI\" errors</strong></p>\n</li>\n</ul>\n<p>See below for details on each error category.</p>\n<h4 id=\"user-action-required-errors\">\"User action required\" errors</h4>\n<p>These occur when Finverse requires additional end-user actions or inputs to complete Institution authentication. These include issues like: invalid credentials, account locked, MFA required.</p>\n<p>Resolution steps:</p>\n<ul>\n<li><p>The end-user may need to login directly to their Institution to re-enable access to their account (e.g. reset password, unlock account).</p>\n</li>\n<li><p>To retry linking, the end-user should complete the /relink flow.</p>\n</li>\n</ul>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><code>error</code> (or <code>error_code</code>)</th>\n<th><code>error_description</code> (or <code>message</code>)</th>\n<th><code>error_details</code> (or <code>details</code>)</th>\n<th><strong>Retryable in refresh flow</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>account_locked</td>\n<td>Your account has been locked</td>\n<td>Please login directly on your institution's site to unlock your account</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>credentials_invalid</td>\n<td>The credentials you entered were incorrect</td>\n<td>Your account may get locked out after several unsuccessful attempts</td>\n<td>NO</td>\n</tr>\n<tr>\n<td>credentials_not_found</td>\n<td>Could not find stored credentials</td>\n<td>We do not have any stored credentials for this account. Please login again to refresh your data.</td>\n<td>NO</td>\n</tr>\n<tr>\n<td>date_of_birth_invalid</td>\n<td>The Date of Birth you provided is incorrect.</td>\n<td>The Date of Birth you provided is incorrect. Please try again.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>login_approval_rejected</td>\n<td>Login request rejected</td>\n<td>Your institution sent a login request to your mobile phone app or number, but the request was rejected.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>login_approval_timeout</td>\n<td>Login approval not received</td>\n<td>Your institution sent a login request to your mobile phone app or number, but did not receive a reply.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>mfa_not_supported</td>\n<td>Could not login to institution</td>\n<td>We cannot login to your institution because your bank requires a 2FA/OTP input which we do not currently support. Please login directly to your institution's site to edit your 2FA/OTP settings, then try again.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>online_access_disabled</td>\n<td>Online access disabled</td>\n<td>We cannot connect to your institution because online (web) login is disabled. Please login directly on your institution’s site or app and enable online login, then try again.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>online_access_disabled (Vietcombank)</td>\n<td>VCB Digibank web login disabled</td>\n<td>We cannot connect to your institution because VCB Digibank web login is disabled. To unlock access, please login to VCB's Mobile App, go to Settings (General Settings -&gt; Login Settings), turn OFF 'Setting VCB Digibank login on web', then try again.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>online_access_disabled _contact_bank_support</td>\n<td>Online access disabled</td>\n<td>We cannot connect to your institution because online (web) login is disabled. Please contact your institution’s customer support service to enable online login, then try again.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>otp_invalid</td>\n<td>The OTP you provided is incorrect.</td>\n<td>The OTP you provided is incorrect. Please try again.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>otp_timeout</td>\n<td>One time password not entered</td>\n<td>The one time password sent to your mobile phone expired. Please try again.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>otp_expired</td>\n<td>One time password expired due to another login attempt</td>\n<td>The one time password has expired, please try again.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>password_update_required</td>\n<td>Password update required</td>\n<td>Your institution requires you to update your password. Please login directly on your institution's site to change your password, then try again.</td>\n<td>NO</td>\n</tr>\n<tr>\n<td>phone_number_invalid</td>\n<td>Phone number is invalid</td>\n<td>The phone number you entered is incorrect or in an invalid format. Please try again.</td>\n<td>NO</td>\n</tr>\n<tr>\n<td>security_device_error</td>\n<td>Security device not registered</td>\n<td>Please register your security device on your institution's site in order to login to your account.</td>\n<td>NO</td>\n</tr>\n<tr>\n<td>username_rejected</td>\n<td>Could not login to institution</td>\n<td>The username is rejected by your institution. Please verify your username. You may also need to login directly on your institution's site or app to enable online (web) login, then try again.</td>\n<td>NO</td>\n</tr>\n<tr>\n<td>username_rejected</td>\n<td>Could not login to institution</td>\n<td>The username is rejected by your institution. Please contact your institution to enable online login, then try again.</td>\n<td>NO</td>\n</tr>\n<tr>\n<td>user_action_required</td>\n<td>Action required on institution's site</td>\n<td>Please login directly on your institution's site to ensure online access is enabled, then try again.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>user_action_required_web_or_mobile</td>\n<td>Action required on bank's site or mobile app</td>\n<td>Your bank is requesting updates which require your review (for example: accept bank's terms &amp; conditions, or update your contact information). Please login directly to your bank's website or mobile app to complete the requested steps, then try again.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>user_action_timeout</td>\n<td>Login timeout</td>\n<td>Your login attempt timed-out during 2FA verification. Please try again.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>user_action_invalid</td>\n<td>Invalid user input</td>\n<td>The institution reported that your input was invalid. Please try again.</td>\n<td>YES</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"temporary-errors\">Temporary errors</h4>\n<p>These occur when Finverse encountered a known temporary error. These include issues like: Institution down for maintenance, or authentication rate limits.</p>\n<p>Resolution steps:</p>\n<ul>\n<li>Wait a few minutes, then retry linking (/relink flow, or /refresh flow if supported for that end-user)</li>\n</ul>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><code>error</code> (or <code>error_code</code>)</th>\n<th><code>error_description</code> (or <code>message</code>)</th>\n<th><code>error_details</code> (or <code>details</code>)</th>\n<th>Retryable in refresh flow</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>account_rate_limited</td>\n<td>Your account cannot be accessed right now</td>\n<td>Your bank currently does not allow access to your account due to repeat logins or login attempts. Please try again later.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>already_logged_in</td>\n<td>Already logged in</td>\n<td>Your institution reports this user is already logged in. Please logout of your other session and try again.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>captcha_invalid</td>\n<td>Temporary login error</td>\n<td>An error occurred during login. Please try again.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>institution_unavailable</td>\n<td>Could not connect to institution</td>\n<td>The institution’s internet banking service may be under temporary maintenance. Please try again later.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>login_cancelled</td>\n<td>Login attempt cancelled</td>\n<td>Your institution cancelled this login attempt. This usually happens when you login from another device or browser at the same time. Please try again.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>request_timeout</td>\n<td>Request timeout</td>\n<td></td>\n<td>YES</td>\n</tr>\n<tr>\n<td>too_many_attempts</td>\n<td>Too many attempts</td>\n<td>Rate limit exceeded. Try again later.</td>\n<td>YES</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"persistent-errors\">Persistent errors</h4>\n<p>These occur when Finverse requires additional end-user actions or inputs to complete Institution authentication. These include issues like: Institution denied access to Finverse, or unexpected data received during authentication. Resolution steps:</p>\n<ul>\n<li><p>Customer App should contact Finverse to confirm the error</p>\n</li>\n<li><p>Do not retry linking until a later date (Finverse likely will need to implement a fix first)</p>\n</li>\n</ul>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><code>error</code> (or <code>error_code</code>)</th>\n<th><code>error_description</code> (or <code>message</code>)</th>\n<th><code>error_details</code> (or <code>details</code>)</th>\n<th>Retryable in refresh flow</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>account_not_supported</td>\n<td>Account not supported</td>\n<td>We do not support linking your account type at this institution. Please try another institution.</td>\n<td>NO</td>\n</tr>\n<tr>\n<td>institution_access_denied</td>\n<td>Could not connect to institution</td>\n<td>We are experiencing issues connecting to your institution. Please try again in a few days.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>institution_unavailable</td>\n<td>Product temporarily unavailable</td>\n<td>The institution is temporarily unavailable to serve this product. Please try again in a few hours</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>other_error</td>\n<td>Linking error</td>\n<td>There was an error while attempting to link your account. Please try again later.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>unexpected_data</td>\n<td>Received unexpected data</td>\n<td>We received data from the institution but are not able to process it at this time. Please try again in a few days.</td>\n<td>YES</td>\n</tr>\n<tr>\n<td>unknown_error or error_unknown</td>\n<td>Could not receive data from institution</td>\n<td>A temporary error occurred while receiving data. Please try again.</td>\n<td>YES</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"link-ui-standard-errors\">\"Link UI\" standard errors</h4>\n<p>These are various expected Finverse errors that can be displayed by the Finverse Link UI during the linking flow, typically due to unsupported client or user-behaviour during the linking session.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><code>error</code> (or <code>error_code</code>)</th>\n<th><code>error_description</code> (or <code>message</code>)</th>\n<th><code>error_details</code> (or <code>details</code>)</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>close_link_ui_error</td>\n<td>User closed the Finverse Link UI</td>\n<td></td>\n</tr>\n<tr>\n<td>payment_instruction_used</td>\n<td>Payment instruction is used</td>\n<td>The payment instruction is invalid because it is used. Please get a new one and try again.</td>\n</tr>\n<tr>\n<td>real_bank_connections_limit</td>\n<td>Connections limit reached</td>\n<td>This app has reached its connections limit for real banks. Please contact us to upgrade your limit.</td>\n</tr>\n<tr>\n<td>unauthorized_error</td>\n<td>Linking session expired</td>\n<td>Sessions expire after 5 minutes of inactivity. Please close this window and try linking again.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"link-ui-exceptions\">\"Link UI\" exceptions</h4>\n<p>These are exceptional system errors that can be displayed by the Finverse Link UI during the linking flow. These typically indicate network or server-side issues and should be very rare.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><code>error</code> (or <code>error_code</code>)</th>\n<th><code>error_description</code> (or <code>message</code>)</th>\n<th><code>error_details</code> (or <code>details</code>)</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>finverse_oauth_error</td>\n<td>Internal Error</td>\n<td>An internal error occurred. Please try again in a few hours.</td>\n</tr>\n<tr>\n<td>frontend_connection_error</td>\n<td>Unexpected error</td>\n<td>There was an unexpected problem connecting to our servers. Please verify that you are using an https connection (or localhost)</td>\n</tr>\n<tr>\n<td>network_error</td>\n<td>Generic network error that should be retried</td>\n<td></td>\n</tr>\n<tr>\n<td>oauth_code_error</td>\n<td>Linking Error</td>\n<td>There was an error while attempting to link your account. Please try again later.</td>\n</tr>\n<tr>\n<td>oauth_jwk_error</td>\n<td>Linking Error</td>\n<td>There was an error while attempting to link your account. Please try again later.</td>\n</tr>\n<tr>\n<td>oauth_state_error</td>\n<td>Linking Error</td>\n<td>There was an error while attempting to link your account. Please try again later.</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"d0068c89-a729-4e51-8e1f-9a34a61f72f8"}],"id":"7ad54c28-6029-4630-96c7-ef186537d1d1","description":"<h2 id=\"error-schema\">Error schema</h2>\n<p>Finverse errors are returned wrapped in an <code>error</code> object.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>error</td>\n<td>object</td>\n<td>Standard Finverse error object. See below.</td>\n</tr>\n<tr>\n<td>code</td>\n<td>number</td>\n<td>[DEPRECATED]</td>\n</tr>\n<tr>\n<td>message</td>\n<td>string</td>\n<td>[DEPRECATED]</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"error-object\">error (object)</h3>\n<p>Each <code>error</code> object contains the following fields:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>code</td>\n<td>number</td>\n<td>[DEPRECATED]</td>\n</tr>\n<tr>\n<td>error_code</td>\n<td>string</td>\n<td>Error code (e.g. \"INVALID_PARAMETER\")</td>\n</tr>\n<tr>\n<td>details</td>\n<td>string, optional</td>\n<td>Additional details on the error (e.g. information on which specific parameter is invalid in an \"INVALID_PARAMETER\" error)</td>\n</tr>\n<tr>\n<td>message</td>\n<td>string</td>\n<td>User-friendly message describing the error</td>\n</tr>\n<tr>\n<td>request_id</td>\n<td>object</td>\n<td>Request ID associated with the request: this is the <code>request_id</code> provided by the Customer App in the API request header; if no <code>request_id</code> was provided, this will be blank.</td>\n</tr>\n<tr>\n<td>type</td>\n<td>ENUM</td>\n<td>High-level error type. Possible values: <code>API_ERROR</code>, <code>LINKING_ERROR</code>, <code>PAYMENT_ERROR</code>. Notes: <code>API_ERROR</code> refers to internal Finverse errors; <code>LINKING_ERROR</code> refers to errors connecting to external Institutions (Data API only); <code>PAYMENT_ERROR</code> refers to payment processing errors, typically related to external payment networks (Payments API only).</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"example\">Example</h2>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"error\": {\n        \"code\": \"INVALID_PARAMETER\",\n        \"details\": \"customer_app_id in body is required\",\n        \"message\": \"The parameters provided are invalid. See details.\",\n        \"request_id\": \"{unique_id}\",\n        \"type\": \"API_ERROR\"\n    },\n}\n\n</code></pre>\n","_postman_id":"7ad54c28-6029-4630-96c7-ef186537d1d1"}],"event":[{"listen":"prerequest","script":{"id":"76f6cb32-6c23-4ab6-a52e-615778e6749e","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"f20d86ab-6543-493d-8003-fe64ecc7ec95","type":"text/javascript","exec":[""]}}],"variable":[{"key":"API_HOST","value":"https://api.prod.finverse.net"},{"key":"LINK_HOST","value":"https://link.prod.finverse.net"},{"key":"customer_app_id","value":"setup_on_developer_portal"},{"key":"client_id","value":"setup_on_developer_portal"},{"key":"client_secret","value":"setup_on_developer_portal"},{"key":"REDIRECT_URI","value":"https://developer.prod.finverse.net/sink"},{"key":"recipient_account_id","value":"contact_finverse_support","type":"string"},{"key":"institution_id","value":"testbank"},{"key":"institution_user_id","value":"usergood"},{"key":"institution_password","value":"datagood"},{"key":"institution_secret","value":"any_institution_secret"}]}