# The Subscription object

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `id` | string | yes |  |
| `name` | string | yes |  |
| `status` | string | yes | One of: `draft`, `active`, `paused`, `cancelled`, `completed`. |
| `start_date` | string | yes |  |
| `mollie_mandate_id` | string | no |  |
| `mollie_profile_id` | string | no |  |
| `next_payment_at` | string | no |  |
| `next_amount` | string | no |  |
| `last_payment_created_at` | string | no |  |
| `resume_at` | string | no |  |
| `cancel_at` | string | no |  |
| `customer_portal` | string | no | Can the customer pause and cancel this subscription in the customer portal: inherit follows the customer portal settings, allow and deny overrule them One of: `inherit`, `allow`, `deny`. |
| `created_at` | string | yes |  |
| `rules` | array of SubscriptionRules | no |  |
| `rules[].id` | string | yes |  |
| `rules[].amount` | string | yes |  |
| `rules[].currency` | string | yes | One of: `AED`, `AUD`, `BGN`, `BRL`, `CAD`, `CHF`, `CZK`, `DKK`, `EUR`, `GBP`, `HKD`, `HUF`, `ILS`, `ISK`, `JPY`, `MXN`, `MYR`, `NOK`, `NZD`, `PHP`, `PLN`, `RON`, `SEK`, `SGD`, `THB`, `TWD`, `USD`, `ZAR`. |
| `rules[].interval` | string | yes | One of: `day`, `week`, `month`, `year`. |
| `rules[].interval_amount` | integer | yes |  |
| `rules[].day` | integer | yes |  |
| `rules[].times` | integer | no |  |
| `rules[].times_done` | integer | yes |  |
| `customer` | object | no |  |

```json
{
    "id": "sub_abc123",
    "name": "Monthly Premium",
    "status": "active",
    "start_date": "2025-01-01",
    "mollie_mandate_id": "mdt_abc123",
    "mollie_profile_id": "pfl_abc123",
    "next_payment_at": "2025-02-01",
    "next_amount": "29.99",
    "last_payment_created_at": "2025-01-01 10:00:00",
    "resume_at": "2025-03-01",
    "cancel_at": "2025-12-31",
    "customer_portal": "inherit",
    "created_at": "2025-01-01 10:00:00",
    "rules": [
        {
            "id": "rule_abc123",
            "amount": "29.99",
            "currency": "EUR",
            "interval": "month",
            "interval_amount": 1,
            "day": 1,
            "times": 12,
            "times_done": 3
        }
    ],
    "customer": {}
}
```
