{
  "info": {
    "_postman_id": "e3bafebc-c50b-4e2d-a83c-c71fddb1e4ff",
    "name": "Payments API",
    "description": "Create deposits and withdrawals and follow them to the end, in test mode.\n\n1. Import the environment too, pick it in the top right corner, paste your test key (sk_test_…) into api_key and the address of your webhook receiver into webhook_url.\n2. Send the requests in order: the first create request saves its id for the others.\n\nThe guide explains every step: https://docs.no1paytest.com/guide",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "item": [
    {
      "name": "Deposits",
      "item": [
        {
          "name": "Create a deposit (you choose the method)",
          "event": [
            {
              "listen": "test",
              "script": {
                "type": "text/javascript",
                "exec": [
                  "pm.test(\"Status is 201\", function () {",
                  "    if (pm.response.code !== 201) {",
                  "        throw new Error(\"Expected 201, got \" + pm.response.code);",
                  "    }",
                  "});",
                  "pm.test(\"Status is pending\", function () {",
                  "    if (pm.response.json().status !== \"pending\") {",
                  "        throw new Error(\"Expected status pending, got \" + pm.response.json().status);",
                  "    }",
                  "});",
                  "if (pm.response.code === 201) {",
                  "    var id = pm.response.json().id;",
                  "    pm.environment.set(\"deposit_id\", id);",
                  "    pm.collectionVariables.set(\"deposit_id\", id);",
                  "}"
                ]
              }
            }
          ],
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Idempotency-Key",
                "value": "{{$guid}}",
                "type": "text"
              },
              {
                "key": "Content-Type",
                "value": "application/json",
                "type": "text"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"amount\": 1500000,\n  \"currency\": \"IRR\",\n  \"customer\": {\n    \"id\": \"customer-77\"\n  },\n  \"method\": \"account_transfer\",\n  \"reference\": \"order-{{$timestamp}}\",\n  \"redirect_url\": \"https://shop.example/orders/order-{{$timestamp}}/return\",\n  \"webhook_url\": \"{{webhook_url}}\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{api_url}}/v1/deposits",
              "host": [
                "{{api_url}}"
              ],
              "path": [
                "v1",
                "deposits"
              ]
            },
            "description": "The payment you want your customer to make, with the method you choose: the customer goes straight to that method's payment page. The answer has payment_url: send the customer there. A new reference is made for every send, and the Idempotency-Key is a new one each time. This request saves the deposit's id for the requests after it.\n\nGuide: https://docs.no1paytest.com/guide#create"
          },
          "response": [
            {
              "name": "201 Created",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"amount\": 1500000,\n  \"currency\": \"IRR\",\n  \"customer\": {\n    \"id\": \"customer-77\"\n  },\n  \"method\": \"account_transfer\",\n  \"reference\": \"order-{{$timestamp}}\",\n  \"redirect_url\": \"https://shop.example/orders/order-{{$timestamp}}/return\",\n  \"webhook_url\": \"{{webhook_url}}\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/deposits",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "deposits"
                  ]
                }
              },
              "status": "Created",
              "code": 201,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"id\": \"dep_01k6c3s0v1m2n3p4q5r6s7t8v9\",\n  \"object\": \"deposit\",\n  \"mode\": \"test\",\n  \"status\": \"pending\",\n  \"method\": \"account_transfer\",\n  \"amount\": 1500000,\n  \"currency\": \"IRR\",\n  \"amount_rials\": 1500000,\n  \"fee_rials\": null,\n  \"reference\": \"order-10542\",\n  \"customer\": {\n    \"id\": \"customer-77\",\n    \"level\": \"default\"\n  },\n  \"payer\": {\n    \"card_number\": null,\n    \"account\": null,\n    \"bank\": null\n  },\n  \"redirect_url\": \"https://shop.example/orders/order-10542/return\",\n  \"webhook_url\": \"https://shop.example/webhooks/payments\",\n  \"allowed_methods\": null,\n  \"failure_code\": null,\n  \"failure_message\": null,\n  \"version\": 1,\n  \"created_at\": \"2026-10-03T09:30:00Z\",\n  \"updated_at\": \"2026-10-03T09:30:00Z\",\n  \"expires_at\": \"2026-10-03T10:00:00Z\",\n  \"paid_at\": null,\n  \"payment_url\": \"https://pay.no1paytest.com/checkout/Zm9yLXRoZS1ndWlkZS1vbg\"\n}"
            },
            {
              "name": "422 validation_failed",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"amount\": 1500000,\n  \"currency\": \"IRR\",\n  \"customer\": {\n    \"id\": \"customer-77\"\n  },\n  \"method\": \"account_transfer\",\n  \"reference\": \"order-{{$timestamp}}\",\n  \"redirect_url\": \"https://shop.example/orders/order-{{$timestamp}}/return\",\n  \"webhook_url\": \"{{webhook_url}}\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/deposits",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "deposits"
                  ]
                }
              },
              "status": "Unprocessable Content",
              "code": 422,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/problem+json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"type\": \"https://docs.no1paytest.com/errors/validation_failed\",\n  \"status\": 422,\n  \"code\": \"validation_failed\",\n  \"title\": \"The request is not valid\",\n  \"detail\": \"Fix the fields listed in \\\"errors\\\" and send the request again.\",\n  \"errors\": {\n    \"amount\": [\n      \"Fill in amount.\"\n    ]\n  },\n  \"request_id\": \"req_01k6c0z7x4m2p9q8r5s3t1v0w2\"\n}"
            },
            {
              "name": "409 idempotency_key_reused",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"amount\": 1500000,\n  \"currency\": \"IRR\",\n  \"customer\": {\n    \"id\": \"customer-77\"\n  },\n  \"method\": \"account_transfer\",\n  \"reference\": \"order-{{$timestamp}}\",\n  \"redirect_url\": \"https://shop.example/orders/order-{{$timestamp}}/return\",\n  \"webhook_url\": \"{{webhook_url}}\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/deposits",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "deposits"
                  ]
                }
              },
              "status": "Conflict",
              "code": 409,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/problem+json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"type\": \"https://docs.no1paytest.com/errors/idempotency_key_reused\",\n  \"status\": 409,\n  \"code\": \"idempotency_key_reused\",\n  \"title\": \"Idempotency key was already used with a different request\",\n  \"detail\": \"This Idempotency-Key was already used with a different request body.\",\n  \"request_id\": \"req_01k6c0z7x4m2p9q8r5s3t1v0w2\"\n}"
            },
            {
              "name": "422 method_unavailable",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"amount\": 1500000,\n  \"currency\": \"IRR\",\n  \"customer\": {\n    \"id\": \"customer-77\"\n  },\n  \"method\": \"account_transfer\",\n  \"reference\": \"order-{{$timestamp}}\",\n  \"redirect_url\": \"https://shop.example/orders/order-{{$timestamp}}/return\",\n  \"webhook_url\": \"{{webhook_url}}\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/deposits",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "deposits"
                  ]
                }
              },
              "status": "Unprocessable Content",
              "code": 422,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/problem+json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"type\": \"https://docs.no1paytest.com/errors/method_unavailable\",\n  \"status\": 422,\n  \"code\": \"method_unavailable\",\n  \"title\": \"This payment method is not available right now\",\n  \"detail\": \"Method account_transfer is not available right now: no bank account is ready to receive it.\",\n  \"request_id\": \"req_01k6c0z7x4m2p9q8r5s3t1v0w2\"\n}"
            },
            {
              "name": "422 amount_outside_method_limits",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"amount\": 1500000,\n  \"currency\": \"IRR\",\n  \"customer\": {\n    \"id\": \"customer-77\"\n  },\n  \"method\": \"account_transfer\",\n  \"reference\": \"order-{{$timestamp}}\",\n  \"redirect_url\": \"https://shop.example/orders/order-{{$timestamp}}/return\",\n  \"webhook_url\": \"{{webhook_url}}\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/deposits",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "deposits"
                  ]
                }
              },
              "status": "Unprocessable Content",
              "code": 422,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/problem+json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"type\": \"https://docs.no1paytest.com/errors/amount_outside_method_limits\",\n  \"status\": 422,\n  \"code\": \"amount_outside_method_limits\",\n  \"title\": \"The amount is outside your limits for this method\",\n  \"detail\": \"A account_transfer deposit must be between 10000 and 1000000 rials (your limits for this method).\",\n  \"request_id\": \"req_01k6c0z7x4m2p9q8r5s3t1v0w2\"\n}"
            }
          ]
        },
        {
          "name": "Create a deposit (the customer chooses)",
          "event": [
            {
              "listen": "test",
              "script": {
                "type": "text/javascript",
                "exec": [
                  "pm.test(\"Status is 201\", function () {",
                  "    if (pm.response.code !== 201) {",
                  "        throw new Error(\"Expected 201, got \" + pm.response.code);",
                  "    }",
                  "});",
                  "pm.test(\"Status is waiting_for_method\", function () {",
                  "    if (pm.response.json().status !== \"waiting_for_method\") {",
                  "        throw new Error(\"Expected status waiting_for_method, got \" + pm.response.json().status);",
                  "    }",
                  "});"
                ]
              }
            }
          ],
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Idempotency-Key",
                "value": "{{$guid}}",
                "type": "text"
              },
              {
                "key": "Content-Type",
                "value": "application/json",
                "type": "text"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"amount\": 1500000,\n  \"currency\": \"IRR\",\n  \"customer\": {\n    \"id\": \"customer-77\"\n  },\n  \"reference\": \"order-{{$timestamp}}\",\n  \"redirect_url\": \"https://shop.example/orders/order-{{$timestamp}}/return\",\n  \"webhook_url\": \"{{webhook_url}}\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{api_url}}/v1/deposits",
              "host": [
                "{{api_url}}"
              ],
              "path": [
                "v1",
                "deposits"
              ]
            },
            "description": "The same payment without method: the customer picks the method on our method selection page, among the methods that work now for them and the amount. The deposit is waiting_for_method with method null until they pick. The answer has payment_url: send the customer there. This request keeps no id: the requests after it use the deposit of the one above (a deposit waiting for its method needs a method to be simulated).\n\nGuide: https://docs.no1paytest.com/guide#method"
          },
          "response": [
            {
              "name": "201 Created (waiting for the customer's method)",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"amount\": 1500000,\n  \"currency\": \"IRR\",\n  \"customer\": {\n    \"id\": \"customer-77\"\n  },\n  \"reference\": \"order-{{$timestamp}}\",\n  \"redirect_url\": \"https://shop.example/orders/order-{{$timestamp}}/return\",\n  \"webhook_url\": \"{{webhook_url}}\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/deposits",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "deposits"
                  ]
                }
              },
              "status": "Created",
              "code": 201,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"id\": \"dep_01k6c3s0v1m2n3p4q5r6s7t8v9\",\n  \"object\": \"deposit\",\n  \"mode\": \"test\",\n  \"status\": \"waiting_for_method\",\n  \"method\": null,\n  \"amount\": 1500000,\n  \"currency\": \"IRR\",\n  \"amount_rials\": 1500000,\n  \"fee_rials\": null,\n  \"reference\": \"order-10543\",\n  \"customer\": {\n    \"id\": \"customer-77\",\n    \"level\": \"default\"\n  },\n  \"payer\": {\n    \"card_number\": null,\n    \"account\": null,\n    \"bank\": null\n  },\n  \"redirect_url\": \"https://shop.example/orders/order-10543/return\",\n  \"webhook_url\": \"https://shop.example/webhooks/payments\",\n  \"allowed_methods\": null,\n  \"failure_code\": null,\n  \"failure_message\": null,\n  \"version\": 1,\n  \"created_at\": \"2026-10-03T09:30:00Z\",\n  \"updated_at\": \"2026-10-03T09:30:00Z\",\n  \"expires_at\": \"2026-10-03T10:30:00Z\",\n  \"paid_at\": null,\n  \"payment_url\": \"https://pay.no1paytest.com/checkout/Zm9yLXRoZS1ndWlkZS1vbg\"\n}"
            },
            {
              "name": "422 method_unavailable",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"amount\": 1500000,\n  \"currency\": \"IRR\",\n  \"customer\": {\n    \"id\": \"customer-77\"\n  },\n  \"reference\": \"order-{{$timestamp}}\",\n  \"redirect_url\": \"https://shop.example/orders/order-{{$timestamp}}/return\",\n  \"webhook_url\": \"{{webhook_url}}\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/deposits",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "deposits"
                  ]
                }
              },
              "status": "Unprocessable Content",
              "code": 422,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/problem+json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"type\": \"https://docs.no1paytest.com/errors/method_unavailable\",\n  \"status\": 422,\n  \"code\": \"method_unavailable\",\n  \"title\": \"This payment method is not available right now\",\n  \"detail\": \"No payment method is available right now for this customer and amount.\",\n  \"request_id\": \"req_01k6c0z7x4m2p9q8r5s3t1v0w2\"\n}"
            }
          ]
        },
        {
          "name": "Get a deposit",
          "event": [
            {
              "listen": "test",
              "script": {
                "type": "text/javascript",
                "exec": [
                  "pm.test(\"Status is 200\", function () {",
                  "    if (pm.response.code !== 200) {",
                  "        throw new Error(\"Expected 200, got \" + pm.response.code);",
                  "    }",
                  "});",
                  "pm.test(\"The answer is a dep\", function () {",
                  "    if (String(pm.response.json().id).indexOf(\"dep_\") !== 0) {",
                  "        throw new Error(\"No dep_… id in the answer\");",
                  "    }",
                  "});"
                ]
              }
            }
          ],
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{api_url}}/v1/deposits/{{deposit_id}}",
              "host": [
                "{{api_url}}"
              ],
              "path": [
                "v1",
                "deposits",
                "{{deposit_id}}"
              ]
            },
            "description": "The truth about a deposit. Ask it when a webhook arrives and before you credit the order.\n\nGuide: https://docs.no1paytest.com/guide#confirm"
          },
          "response": [
            {
              "name": "200 OK (pending)",
              "originalRequest": {
                "method": "GET",
                "header": [],
                "url": {
                  "raw": "{{api_url}}/v1/deposits/{{deposit_id}}",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "deposits",
                    "{{deposit_id}}"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"id\": \"dep_01k6c3s0v1m2n3p4q5r6s7t8v9\",\n  \"object\": \"deposit\",\n  \"mode\": \"test\",\n  \"status\": \"pending\",\n  \"method\": \"account_transfer\",\n  \"amount\": 1500000,\n  \"currency\": \"IRR\",\n  \"amount_rials\": 1500000,\n  \"fee_rials\": null,\n  \"reference\": \"order-10542\",\n  \"customer\": {\n    \"id\": \"customer-77\",\n    \"level\": \"default\"\n  },\n  \"payer\": {\n    \"card_number\": null,\n    \"account\": null,\n    \"bank\": null\n  },\n  \"redirect_url\": \"https://shop.example/orders/order-10542/return\",\n  \"webhook_url\": \"https://shop.example/webhooks/payments\",\n  \"allowed_methods\": null,\n  \"failure_code\": null,\n  \"failure_message\": null,\n  \"version\": 1,\n  \"created_at\": \"2026-10-03T09:30:00Z\",\n  \"updated_at\": \"2026-10-03T09:30:00Z\",\n  \"expires_at\": \"2026-10-03T10:00:00Z\",\n  \"paid_at\": null\n}"
            },
            {
              "name": "404 deposit_not_found",
              "originalRequest": {
                "method": "GET",
                "header": [],
                "url": {
                  "raw": "{{api_url}}/v1/deposits/{{deposit_id}}",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "deposits",
                    "{{deposit_id}}"
                  ]
                }
              },
              "status": "Not Found",
              "code": 404,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/problem+json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"type\": \"https://docs.no1paytest.com/errors/deposit_not_found\",\n  \"status\": 404,\n  \"code\": \"deposit_not_found\",\n  \"title\": \"Deposit not found\",\n  \"detail\": \"Deposit not found\",\n  \"request_id\": \"req_01k6c0z7x4m2p9q8r5s3t1v0w2\"\n}"
            }
          ]
        },
        {
          "name": "Simulate a test deposit",
          "event": [
            {
              "listen": "test",
              "script": {
                "type": "text/javascript",
                "exec": [
                  "pm.test(\"Status is 200\", function () {",
                  "    if (pm.response.code !== 200) {",
                  "        throw new Error(\"Expected 200, got \" + pm.response.code);",
                  "    }",
                  "});",
                  "pm.test(\"Status is paid\", function () {",
                  "    if (pm.response.json().status !== \"paid\") {",
                  "        throw new Error(\"Expected status paid, got \" + pm.response.json().status);",
                  "    }",
                  "});"
                ]
              }
            }
          ],
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Idempotency-Key",
                "value": "{{$guid}}",
                "type": "text"
              },
              {
                "key": "Content-Type",
                "value": "application/json",
                "type": "text"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"outcome\": \"paid\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{api_url}}/v1/deposits/{{deposit_id}}/simulate",
              "host": [
                "{{api_url}}"
              ],
              "path": [
                "v1",
                "deposits",
                "{{deposit_id}}",
                "simulate"
              ]
            },
            "description": "Test mode only: pays, fails or expires the test deposit, so you can see what your webhook endpoint receives. Change outcome to failed or expired to try the others.\n\nGuide: https://docs.no1paytest.com/guide#test-mode"
          },
          "response": [
            {
              "name": "200 OK (paid)",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"outcome\": \"paid\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/deposits/{{deposit_id}}/simulate",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "deposits",
                    "{{deposit_id}}",
                    "simulate"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"id\": \"dep_01k6c3s0v1m2n3p4q5r6s7t8v9\",\n  \"object\": \"deposit\",\n  \"mode\": \"test\",\n  \"status\": \"paid\",\n  \"method\": \"account_transfer\",\n  \"amount\": 1500000,\n  \"currency\": \"IRR\",\n  \"amount_rials\": 1500000,\n  \"fee_rials\": 22500,\n  \"reference\": \"order-10542\",\n  \"customer\": {\n    \"id\": \"customer-77\",\n    \"level\": \"default\"\n  },\n  \"payer\": {\n    \"card_number\": null,\n    \"account\": null,\n    \"bank\": null\n  },\n  \"redirect_url\": \"https://shop.example/orders/order-10542/return\",\n  \"webhook_url\": \"https://shop.example/webhooks/payments\",\n  \"allowed_methods\": null,\n  \"failure_code\": null,\n  \"failure_message\": null,\n  \"version\": 2,\n  \"created_at\": \"2026-10-03T09:30:00Z\",\n  \"updated_at\": \"2026-10-03T09:30:12Z\",\n  \"expires_at\": \"2026-10-03T10:00:00Z\",\n  \"paid_at\": \"2026-10-03T09:30:12Z\"\n}"
            },
            {
              "name": "409 deposit_not_open",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"outcome\": \"paid\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/deposits/{{deposit_id}}/simulate",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "deposits",
                    "{{deposit_id}}",
                    "simulate"
                  ]
                }
              },
              "status": "Conflict",
              "code": 409,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/problem+json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"type\": \"https://docs.no1paytest.com/errors/deposit_not_open\",\n  \"status\": 409,\n  \"code\": \"deposit_not_open\",\n  \"title\": \"The deposit is not open any more\",\n  \"detail\": \"The deposit is expired; it cannot become paid.\",\n  \"request_id\": \"req_01k6c0z7x4m2p9q8r5s3t1v0w2\"\n}"
            },
            {
              "name": "403 test_mode_only",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"outcome\": \"paid\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/deposits/{{deposit_id}}/simulate",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "deposits",
                    "{{deposit_id}}",
                    "simulate"
                  ]
                }
              },
              "status": "Forbidden",
              "code": 403,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/problem+json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"type\": \"https://docs.no1paytest.com/errors/test_mode_only\",\n  \"status\": 403,\n  \"code\": \"test_mode_only\",\n  \"title\": \"This works only in test mode\",\n  \"detail\": \"The simulator works only with a test key (sk_test_…) on test deposits and withdrawals.\",\n  \"request_id\": \"req_01k6c0z7x4m2p9q8r5s3t1v0w2\"\n}"
            }
          ]
        }
      ]
    },
    {
      "name": "Withdrawals",
      "item": [
        {
          "name": "Create a withdrawal",
          "event": [
            {
              "listen": "test",
              "script": {
                "type": "text/javascript",
                "exec": [
                  "pm.test(\"Status is 201\", function () {",
                  "    if (pm.response.code !== 201) {",
                  "        throw new Error(\"Expected 201, got \" + pm.response.code);",
                  "    }",
                  "});",
                  "if (pm.response.code === 201) {",
                  "    var id = pm.response.json().id;",
                  "    pm.environment.set(\"withdrawal_id\", id);",
                  "    pm.collectionVariables.set(\"withdrawal_id\", id);",
                  "}"
                ]
              }
            }
          ],
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Idempotency-Key",
                "value": "{{$guid}}",
                "type": "text"
              },
              {
                "key": "Content-Type",
                "value": "application/json",
                "type": "text"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"amount\": 25000000,\n  \"currency\": \"IRR\",\n  \"customer\": {\n    \"id\": \"customer-77\"\n  },\n  \"destination\": {\n    \"card_number\": \"0000000000000018\",\n    \"sheba\": \"IR650000000000000000000003\",\n    \"holder_name\": \"Sara Ahmadi\"\n  },\n  \"reference\": \"payout-{{$timestamp}}\",\n  \"webhook_url\": \"{{webhook_url}}\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{api_url}}/v1/withdrawals",
              "host": [
                "{{api_url}}"
              ],
              "path": [
                "v1",
                "withdrawals"
              ]
            },
            "description": "Money going out to your customer's card and Sheba. The card and Sheba here are test data: a test key takes only the test cards and test Shebas of the guide (Test data), and this Sheba leaves the withdrawal for you to end. A test withdrawal never reaches a bank.\n\nGuide: https://docs.no1paytest.com/guide#withdrawals"
          },
          "response": [
            {
              "name": "201 Created",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"amount\": 25000000,\n  \"currency\": \"IRR\",\n  \"customer\": {\n    \"id\": \"customer-77\"\n  },\n  \"destination\": {\n    \"card_number\": \"0000000000000018\",\n    \"sheba\": \"IR650000000000000000000003\",\n    \"holder_name\": \"Sara Ahmadi\"\n  },\n  \"reference\": \"payout-{{$timestamp}}\",\n  \"webhook_url\": \"{{webhook_url}}\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/withdrawals",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "withdrawals"
                  ]
                }
              },
              "status": "Created",
              "code": 201,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"id\": \"wd_01k6c3s0v1m2n3p4q5r6s7t8v9\",\n  \"object\": \"withdrawal\",\n  \"mode\": \"test\",\n  \"status\": \"waiting_for_approval\",\n  \"method\": null,\n  \"amount\": 25000000,\n  \"currency\": \"IRR\",\n  \"paid_amount_rials\": 0,\n  \"reference\": \"payout-20931\",\n  \"customer\": {\n    \"id\": \"customer-77\",\n    \"level\": \"default\"\n  },\n  \"destination\": {\n    \"card_last4\": \"0018\",\n    \"sheba_last4\": \"0003\",\n    \"holder_name\": \"Sara Ahmadi\",\n    \"bank\": null,\n    \"card_number\": \"0000000000000018\",\n    \"sheba\": \"IR650000000000000000000003\",\n    \"account_number\": null\n  },\n  \"version\": 1,\n  \"failure_code\": null,\n  \"failure_message\": null,\n  \"webhook_url\": \"https://shop.example/webhooks/payments\",\n  \"created_at\": \"2026-10-03T09:30:00Z\",\n  \"updated_at\": \"2026-10-03T09:30:00Z\",\n  \"paid_at\": null\n}"
            },
            {
              "name": "422 amount_outside_method_limits",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"amount\": 25000000,\n  \"currency\": \"IRR\",\n  \"customer\": {\n    \"id\": \"customer-77\"\n  },\n  \"destination\": {\n    \"card_number\": \"0000000000000018\",\n    \"sheba\": \"IR650000000000000000000003\",\n    \"holder_name\": \"Sara Ahmadi\"\n  },\n  \"reference\": \"payout-{{$timestamp}}\",\n  \"webhook_url\": \"{{webhook_url}}\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/withdrawals",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "withdrawals"
                  ]
                }
              },
              "status": "Unprocessable Content",
              "code": 422,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/problem+json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"type\": \"https://docs.no1paytest.com/errors/amount_outside_method_limits\",\n  \"status\": 422,\n  \"code\": \"amount_outside_method_limits\",\n  \"title\": \"The amount is outside your limits for this method\",\n  \"detail\": \"The amount (25000000 rials) is outside your withdrawal limits: 5000000 to 20000000 rials.\",\n  \"request_id\": \"req_01k6c0z7x4m2p9q8r5s3t1v0w2\"\n}"
            },
            {
              "name": "422 validation_failed (this test data with a live key)",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"amount\": 25000000,\n  \"currency\": \"IRR\",\n  \"customer\": {\n    \"id\": \"customer-77\"\n  },\n  \"destination\": {\n    \"card_number\": \"0000000000000018\",\n    \"sheba\": \"IR650000000000000000000003\",\n    \"holder_name\": \"Sara Ahmadi\"\n  },\n  \"reference\": \"payout-{{$timestamp}}\",\n  \"webhook_url\": \"{{webhook_url}}\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/withdrawals",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "withdrawals"
                  ]
                }
              },
              "status": "Unprocessable Content",
              "code": 422,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/problem+json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"type\": \"https://docs.no1paytest.com/errors/validation_failed\",\n  \"status\": 422,\n  \"code\": \"validation_failed\",\n  \"title\": \"The request is not valid\",\n  \"detail\": \"Fix the fields listed in \\\"errors\\\" and send the request again.\",\n  \"errors\": {\n    \"destination.card_number\": [\n      \"destination.card_number is a test card: it works only with a test key.\"\n    ],\n    \"destination.sheba\": [\n      \"destination.sheba is a test Sheba: it works only with a test key.\"\n    ]\n  },\n  \"request_id\": \"req_01k6c0z7x4m2p9q8r5s3t1v0w2\"\n}"
            },
            {
              "name": "409 customer_has_recent_withdrawal",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"amount\": 25000000,\n  \"currency\": \"IRR\",\n  \"customer\": {\n    \"id\": \"customer-77\"\n  },\n  \"destination\": {\n    \"card_number\": \"0000000000000018\",\n    \"sheba\": \"IR650000000000000000000003\",\n    \"holder_name\": \"Sara Ahmadi\"\n  },\n  \"reference\": \"payout-{{$timestamp}}\",\n  \"webhook_url\": \"{{webhook_url}}\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/withdrawals",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "withdrawals"
                  ]
                }
              },
              "status": "Conflict",
              "code": 409,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/problem+json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"type\": \"https://docs.no1paytest.com/errors/customer_has_recent_withdrawal\",\n  \"status\": 409,\n  \"code\": \"customer_has_recent_withdrawal\",\n  \"title\": \"This customer has a recent withdrawal\",\n  \"detail\": \"This customer already has a withdrawal made in the last 24 hours (wd_01k6c3s0v1m2n3p4q5r6s7t8v9). One withdrawal per customer per day is turned on for your account; the next one is possible from 2026-10-04T09:30:00Z.\",\n  \"next_allowed_at\": \"2026-10-04T09:30:00Z\",\n  \"request_id\": \"req_01k6c0z7x4m2p9q8r5s3t1v0w2\"\n}"
            },
            {
              "name": "409 idempotency_key_reused",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"amount\": 25000000,\n  \"currency\": \"IRR\",\n  \"customer\": {\n    \"id\": \"customer-77\"\n  },\n  \"destination\": {\n    \"card_number\": \"0000000000000018\",\n    \"sheba\": \"IR650000000000000000000003\",\n    \"holder_name\": \"Sara Ahmadi\"\n  },\n  \"reference\": \"payout-{{$timestamp}}\",\n  \"webhook_url\": \"{{webhook_url}}\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/withdrawals",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "withdrawals"
                  ]
                }
              },
              "status": "Conflict",
              "code": 409,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/problem+json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"type\": \"https://docs.no1paytest.com/errors/idempotency_key_reused\",\n  \"status\": 409,\n  \"code\": \"idempotency_key_reused\",\n  \"title\": \"Idempotency key was already used with a different request\",\n  \"detail\": \"This Idempotency-Key was already used with a different request body.\",\n  \"request_id\": \"req_01k6c0z7x4m2p9q8r5s3t1v0w2\"\n}"
            }
          ]
        },
        {
          "name": "Get a withdrawal",
          "event": [
            {
              "listen": "test",
              "script": {
                "type": "text/javascript",
                "exec": [
                  "pm.test(\"Status is 200\", function () {",
                  "    if (pm.response.code !== 200) {",
                  "        throw new Error(\"Expected 200, got \" + pm.response.code);",
                  "    }",
                  "});",
                  "pm.test(\"The answer is a wd\", function () {",
                  "    if (String(pm.response.json().id).indexOf(\"wd_\") !== 0) {",
                  "        throw new Error(\"No wd_… id in the answer\");",
                  "    }",
                  "});"
                ]
              }
            }
          ],
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{api_url}}/v1/withdrawals/{{withdrawal_id}}",
              "host": [
                "{{api_url}}"
              ],
              "path": [
                "v1",
                "withdrawals",
                "{{withdrawal_id}}"
              ]
            },
            "description": "The truth about a withdrawal: its status and how much of it was paid.\n\nGuide: https://docs.no1paytest.com/guide#withdrawals"
          },
          "response": [
            {
              "name": "200 OK (waiting for approval)",
              "originalRequest": {
                "method": "GET",
                "header": [],
                "url": {
                  "raw": "{{api_url}}/v1/withdrawals/{{withdrawal_id}}",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "withdrawals",
                    "{{withdrawal_id}}"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"id\": \"wd_01k6c3s0v1m2n3p4q5r6s7t8v9\",\n  \"object\": \"withdrawal\",\n  \"mode\": \"test\",\n  \"status\": \"waiting_for_approval\",\n  \"method\": null,\n  \"amount\": 25000000,\n  \"currency\": \"IRR\",\n  \"paid_amount_rials\": 0,\n  \"reference\": \"payout-20931\",\n  \"customer\": {\n    \"id\": \"customer-77\",\n    \"level\": \"default\"\n  },\n  \"destination\": {\n    \"card_last4\": \"0018\",\n    \"sheba_last4\": \"0003\",\n    \"holder_name\": \"Sara Ahmadi\",\n    \"bank\": null,\n    \"card_number\": \"0000000000000018\",\n    \"sheba\": \"IR650000000000000000000003\",\n    \"account_number\": null\n  },\n  \"version\": 1,\n  \"failure_code\": null,\n  \"failure_message\": null,\n  \"webhook_url\": \"https://shop.example/webhooks/payments\",\n  \"created_at\": \"2026-10-03T09:30:00Z\",\n  \"updated_at\": \"2026-10-03T09:30:00Z\",\n  \"paid_at\": null\n}"
            },
            {
              "name": "404 withdrawal_not_found",
              "originalRequest": {
                "method": "GET",
                "header": [],
                "url": {
                  "raw": "{{api_url}}/v1/withdrawals/{{withdrawal_id}}",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "withdrawals",
                    "{{withdrawal_id}}"
                  ]
                }
              },
              "status": "Not Found",
              "code": 404,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/problem+json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"type\": \"https://docs.no1paytest.com/errors/withdrawal_not_found\",\n  \"status\": 404,\n  \"code\": \"withdrawal_not_found\",\n  \"title\": \"Withdrawal not found\",\n  \"detail\": \"Withdrawal not found\",\n  \"request_id\": \"req_01k6c0z7x4m2p9q8r5s3t1v0w2\"\n}"
            }
          ]
        },
        {
          "name": "Simulate a test withdrawal",
          "event": [
            {
              "listen": "test",
              "script": {
                "type": "text/javascript",
                "exec": [
                  "pm.test(\"Status is 200\", function () {",
                  "    if (pm.response.code !== 200) {",
                  "        throw new Error(\"Expected 200, got \" + pm.response.code);",
                  "    }",
                  "});",
                  "pm.test(\"Status is paid\", function () {",
                  "    if (pm.response.json().status !== \"paid\") {",
                  "        throw new Error(\"Expected status paid, got \" + pm.response.json().status);",
                  "    }",
                  "});"
                ]
              }
            }
          ],
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Idempotency-Key",
                "value": "{{$guid}}",
                "type": "text"
              },
              {
                "key": "Content-Type",
                "value": "application/json",
                "type": "text"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"outcome\": \"paid\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{api_url}}/v1/withdrawals/{{withdrawal_id}}/simulate",
              "host": [
                "{{api_url}}"
              ],
              "path": [
                "v1",
                "withdrawals",
                "{{withdrawal_id}}",
                "simulate"
              ]
            },
            "description": "Test mode only: pays or fails the test withdrawal. One still waiting for approval is approved first.\n\nGuide: https://docs.no1paytest.com/guide#withdrawals"
          },
          "response": [
            {
              "name": "200 OK (paid)",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"outcome\": \"paid\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/withdrawals/{{withdrawal_id}}/simulate",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "withdrawals",
                    "{{withdrawal_id}}",
                    "simulate"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"id\": \"wd_01k6c3s0v1m2n3p4q5r6s7t8v9\",\n  \"object\": \"withdrawal\",\n  \"mode\": \"test\",\n  \"status\": \"paid\",\n  \"method\": \"p2p\",\n  \"amount\": 25000000,\n  \"currency\": \"IRR\",\n  \"paid_amount_rials\": 25000000,\n  \"reference\": \"payout-20931\",\n  \"customer\": {\n    \"id\": \"customer-77\",\n    \"level\": \"default\"\n  },\n  \"destination\": {\n    \"card_last4\": \"0018\",\n    \"sheba_last4\": \"0003\",\n    \"holder_name\": \"Sara Ahmadi\",\n    \"bank\": null,\n    \"card_number\": \"0000000000000018\",\n    \"sheba\": \"IR650000000000000000000003\",\n    \"account_number\": null\n  },\n  \"version\": 3,\n  \"failure_code\": null,\n  \"failure_message\": null,\n  \"webhook_url\": \"https://shop.example/webhooks/payments\",\n  \"created_at\": \"2026-10-03T09:30:00Z\",\n  \"updated_at\": \"2026-10-03T09:30:12Z\",\n  \"paid_at\": \"2026-10-03T09:30:12Z\"\n}"
            },
            {
              "name": "409 withdrawal_not_open",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"outcome\": \"paid\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/withdrawals/{{withdrawal_id}}/simulate",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "withdrawals",
                    "{{withdrawal_id}}",
                    "simulate"
                  ]
                }
              },
              "status": "Conflict",
              "code": 409,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/problem+json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"type\": \"https://docs.no1paytest.com/errors/withdrawal_not_open\",\n  \"status\": 409,\n  \"code\": \"withdrawal_not_open\",\n  \"title\": \"The withdrawal is not open\",\n  \"detail\": \"The withdrawal is paid; it cannot change any more.\",\n  \"request_id\": \"req_01k6c0z7x4m2p9q8r5s3t1v0w2\"\n}"
            },
            {
              "name": "403 test_mode_only",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Idempotency-Key",
                    "value": "{{$guid}}",
                    "type": "text"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json",
                    "type": "text"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"outcome\": \"paid\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{api_url}}/v1/withdrawals/{{withdrawal_id}}/simulate",
                  "host": [
                    "{{api_url}}"
                  ],
                  "path": [
                    "v1",
                    "withdrawals",
                    "{{withdrawal_id}}",
                    "simulate"
                  ]
                }
              },
              "status": "Forbidden",
              "code": 403,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/problem+json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"type\": \"https://docs.no1paytest.com/errors/test_mode_only\",\n  \"status\": 403,\n  \"code\": \"test_mode_only\",\n  \"title\": \"This works only in test mode\",\n  \"detail\": \"The simulator works only with a test key (sk_test_…) on test deposits and withdrawals.\",\n  \"request_id\": \"req_01k6c0z7x4m2p9q8r5s3t1v0w2\"\n}"
            }
          ]
        }
      ]
    }
  ],
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{api_key}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "api_url",
      "value": "https://api.no1paytest.com",
      "type": "string",
      "description": "The address of the API."
    },
    {
      "key": "api_key",
      "value": "",
      "type": "string",
      "description": "Your API key: a test key (sk_test_…) from the Developers page of your panel."
    },
    {
      "key": "webhook_url",
      "value": "",
      "type": "string",
      "description": "Your webhook URL: any public https address on your server. Every create request sends it as webhook_url, and it is the only place that deposit's or withdrawal's webhooks go."
    },
    {
      "key": "deposit_id",
      "value": "",
      "type": "string",
      "description": "Filled in by \"Create a deposit\"; the other deposit requests use it."
    },
    {
      "key": "withdrawal_id",
      "value": "",
      "type": "string",
      "description": "Filled in by \"Create a withdrawal\"; the other withdrawal requests use it."
    }
  ]
}
