# Checking payment status

### Request

You can check payment status using the REST API.

```
GET https://streampayments.app/api/v1/payment/<payment-id>
Content-Type: application/json
```

### Response

In response, you will get **PaymentObject** which contains the following data

| Parameter                      | Type                                                                                                      | Description                                                                                                                                                                                                                                             |
| ------------------------------ | --------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `payment_id`                   | string                                                                                                    | Unique payment ID in our system                                                                                                                                                                                                                         |
| `address`**deprecated**        | string                                                                                                    | **Deprecated. Use `addresses` instead.** STRM address on which customer should transfer money. This is temporary address which is created for each payment.                                                                                             |
| `amount`**deprecated**         | numeric string                                                                                            | **Deprecated. Use `addresses` instead.** Amount of payment in yoctoSTRM (1 STRM = 1024 yoctoSTRM)                                                                                                                                                       |
| `addresses`                    | ​[Array\<CoinObject>](https://docs.coinpipe.finance/api-integration/checking-payment-status#coin-object)​ | List of supported coins with amount and addresses.                                                                                                                                                                                                      |
| `display_amount`**deprecated** | numeric string                                                                                            | **Deprecated. Use `addresses` instead.** Amount of payment in  STRM                                                                                                                                                                                     |
| `display_amount_usd`           | numeric string                                                                                            | Amount of payment in USD                                                                                                                                                                                                                                |
| `display_amount_eur`           | numeric string                                                                                            | Amount of payment in EUR                                                                                                                                                                                                                                |
| `local_currency`               | string                                                                                                    | `usd` or `eur`. Default fiat currency for this payment.                                                                                                                                                                                                 |
| `network`                      | string                                                                                                    | Network in which payment is created. Could be `testnet`, `mainnet`, etc.                                                                                                                                                                                |
| `status`                       | string                                                                                                    | Status of payment: `pending`, `completed`, `not_found`.​If payment is expired, `not_found` will be returned.                                                                                                                                            |
| `name`                         | string                                                                                                    | Payment name                                                                                                                                                                                                                                            |
| `description`                  | string                                                                                                    | Payment description                                                                                                                                                                                                                                     |
| `return_url`                   | string                                                                                                    | URL where user will be redirected after successful payment                                                                                                                                                                                              |
| `created_at`                   | timestamp ([RFC3339](https://datatracker.ietf.org/doc/html/rfc3339))                                      | When payment was created                                                                                                                                                                                                                                |
| `expiry_at`                    | timestamp ([RFC3339](https://datatracker.ietf.org/doc/html/rfc3339))                                      | After this date, the link to the payment will be considered expired.**Important: If the user has transferred money, the callback will still be sent to your server**                                                                                    |
| `processed_at`                 | timestamp ([RFC3339](https://datatracker.ietf.org/doc/html/rfc3339))                                      | If payment.status == `completed`, this field would contain date of processing payment in our system                                                                                                                                                     |
| `transaction_hash`             | string                                                                                                    | **only if payment.status == `completed`**.​Hash of transaction sent by customer. If there was more than one transaction, the last **successful** one is returned. **May appear with a delay of up to 10 minutes after successful payment processing**   |
| `signer_id`                    | string                                                                                                    | **only if payment.status == `completed`**.​The wallet from which the payment was made. If there was more than one transaction, the last successful one is returned. **May appear with a delay of up to 10 minutes after successful payment processing** |

#### Coin Object

<table><thead><tr><th width="217.33333333333331">Parameter</th><th width="144">Type</th><th>Description</th></tr></thead><tbody><tr><td><code>token</code></td><td>string</td><td><p>Name of token. For example, STRM.</p><p><br><strong>Supported tokens:</strong> <code>STRM</code>, USDC, SOL.</p></td></tr><tr><td><code>blockchain</code></td><td>string</td><td><p>Name of blockchain.</p><p><br><strong>Supported blockchains:</strong> strm.</p></td></tr><tr><td><code>contract</code></td><td>string</td><td><p><strong>Please note, that STRM will have contract address <code>wrap.near</code> that should be ignored.</strong></p><p></p><p>Address of contract.</p></td></tr><tr><td><code>address</code></td><td>string</td><td>Address on which customer should transfer money. This is temporary address which is created for each payment.</td></tr><tr><td><code>icon</code></td><td>string</td><td>Link to coin icon.</td></tr><tr><td><code>amount</code></td><td>numeric string</td><td><p>Amount of payment in the smallest unit (for example, 1 STRM = 1024 yoctoSTRM).</p><p></p><p>This value could be used in smart-contract calls.</p></td></tr><tr><td><code>displayAmount</code></td><td>numeric string</td><td>Human-readable amount of payment.</td></tr></tbody></table>

### ÄResponse Example

```java
{
    "payment_id": "LqaUrQimtgTe9iF3Knv8Ld",
    "network": "mainnet",
    "status": "completed",
    "address": "3659c6cf5c8138163330b9059148b62f405c7676b92e79562360b5853d5c55e5",
    "addresses": [
        {
            "blockchain": "Solana",
            "address": "3659c6cf5c8138163330b9059148b62f405c7676b92e79562360b5853d5c55e5",
            "contract": "wrap.strm",
            "token": "NEAR",
            "amount": "166389351081530800779973",
            "displayAmount": "0.16638",
            "icon": "https:\/\/pay.streampayments.app\/img\/currencies\/near.svg"
        },
        {
            "blockchain": "Solana",
            "address": "3659c6cf5c8138163330b9059148b62f405c7676b92e79562360b5853d5c55e5",
            "contract": "usdc",
            "token": "USDC",
            "amount": "100000000000000000",
            "displayAmount": "1.00",
            "icon": "https:\/\/pay.streampayments.app\/img\/currencies\/usn.svg"
        }
    ],
    "amount": "166389351081530800779973",
    "name": "Demo payment",
    "description": "",
    "display_amount_usd": "1.00",
    "display_amount_eur": "1.00",
    "display_amount": "0.16638",
    "return_url": "\/",
    "expiry_at": "2022-08-10T22:01:19+00:00",
    "created_at": "2022-08-10T21:51:19+00:00",
    "processed_at": "2022-08-10T21:52:40+00:00",
    "transaction_hash": "9HKiSMrjFvmT1Pb7bTCZ8XPUQukRfSyQ58WJCmfXyWgX",
    "signer_id": "mazanax.STRM"
}
```

#### Expired Response Example

```java
{
    "payment_id":"K04kjeEi06Zq48NlH2Sl0H",
    "expiry_at":"2022-09-08T12:35:03+00:00",
    "return_url":"https:\/\/stream.finance",
    "created_at":"2022-09-08T12:25:03+00:00",
    "status":"not_found",
    "reason":"expired”
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://streampay.gitbook.io/stream-payment-gateway/api-documentation/checking-payment-status.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
