> For the complete documentation index, see [llms.txt](https://api-docs.bumper.co/bumper-api-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://api-docs.bumper.co/bumper-api-documentation/reference/payment-solutions/payplus-subscriptions/setup-subscription.md).

# Setup Subscription

<mark style="color:green;">`POST`</mark> `{{base_url}}/v2/apply/`

Creates a subscription payment request.  A successful request will return a `token`. The token should be recorded for later use.

#### Headers

| Name                                           | Type             | Description |
| ---------------------------------------------- | ---------------- | ----------- |
| Content-Type<mark style="color:red;">\*</mark> | application/json |             |
| Accept<mark style="color:red;">\*</mark>       | application/json |             |

#### Request Body

<table><thead><tr><th width="224.4000244140625">Name</th><th width="151.93341064453125">Type</th><th>Description</th></tr></thead><tbody><tr><td>amount<mark style="color:red;">*</mark></td><td>String</td><td>The payment amount required from the customer.<br><br>If subscription is fixed price, amount will be omitted and we'll use what we have stored against subscription.</td></tr><tr><td>api_key<mark style="color:red;">*</mark></td><td>String</td><td>This is supplier specific and provided by BUMPER</td></tr><tr><td>currency</td><td>String</td><td>The three character ISO currency code</td></tr><tr><td>order_reference</td><td>String</td><td>The supplier reference</td></tr><tr><td>subscription_product_id<mark style="color:red;">*</mark></td><td>String</td><td>This is the ID of the subscription, this will be provided after subscription has been setup.<br><br>Endpoint to retrieve to be released 19/09/2026</td></tr><tr><td>signature<mark style="color:red;">*</mark></td><td>String</td><td><a href="/bumper-api-documentation/authentication.md">Hash </a>created through all the parameters of this request body</td></tr><tr><td>first_name</td><td>String</td><td>The first name of the customer</td></tr><tr><td>last_name</td><td>String</td><td>The last name of the customer</td></tr><tr><td>preferred_product_type<mark style="color:red;">*</mark></td><td>String</td><td>payplus</td></tr><tr><td>invoice_number</td><td>String</td><td>The supplier invoice number</td></tr><tr><td>user_email</td><td>String</td><td>Users email address can be assigned to payment.</td></tr><tr><td>additional_data</td><td>Array</td><td><pre><code>{
    "key1": "value1",
    "key2": "value2",
    "key3": "value3"
}
</code></pre></td></tr><tr><td>send_email</td><td>Boolean</td><td>If true, Bumper sends a link to the customer via email to complete the subscription.</td></tr><tr><td>send_sms</td><td>Boolean</td><td>If true, Bumper sends a link to the customer via SMS to complete the subscription.</td></tr></tbody></table>

{% tabs %}
{% tab title="200 Payment created successfully" %}

```json
{
    "message": "Subscription created successfully",
    "data": {
        "token": "<token>",
        "redirect_url": "<url>"
    },
    "success": true,
    "additional_data": {
        "key1": "value1",
        "key2": "value2",
        "key3": "value3"
    }
}
```

{% endtab %}

{% tab title="400: Bad Request Bad Request" %}

```json
{
    "success": false,
    "message": "Signature provided is Invalid"
}
```

```json
{
    "success": false,
    "message": "[key] not provided"
}
```

{% endtab %}

{% tab title="500: Internal Server Error Internal Server Error" %}

{% endtab %}
{% endtabs %}
