curl --request POST \
--url https://app.pennylane.com/api/external/v2/billing_subscriptions \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"start": "2023-01-01",
"mode": {
"type": "email",
"email_settings": {
"recipients": [
"customer@example.com",
"accounting@example.com"
]
}
},
"payment_conditions": "upon_receipt",
"payment_method": "offline",
"recurring_rule": {
"type": "yearly",
"interval": 123,
"count": 12
},
"customer_id": 42,
"customer_invoice_data": {
"currency": "EUR",
"customer_invoice_template_id": 42,
"pdf_invoice_free_text": "Additional free field",
"pdf_invoice_subject": "Invoice title",
"pdf_description": "Invoice description",
"special_mention": "Additional details",
"language": "fr_FR",
"discount": {
"type": "absolute",
"value": "25"
},
"invoice_line_sections": [
{
"title": "Invoice line section title",
"description": "Description of the invoice line section",
"rank": 1
}
],
"invoice_lines": [
{
"label": "Demo label",
"quantity": 12,
"unit": "piece",
"raw_currency_unit_price": "33.333334",
"vat_rate": "FR_200",
"description": "<string>",
"section_rank": 1,
"discount": {
"type": "absolute",
"value": "25"
},
"ledger_account_id": 1255,
"product_id": 42
}
]
}
}'
{
"id": 42,
"next_occurrence": "2023-01-01",
"prev_occurrence": "2023-01-01",
"stopped_at": "2023-08-30T10:08:08.146343Z",
"start": "2023-01-01",
"finish": "2023-12-31",
"status": "draft",
"mode": "awaiting_validation",
"activated_at": "2023-08-30T10:08:08.146343Z",
"payment_conditions": "upon_receipt",
"payment_method": "offline",
"email_settings": {
"recipients": [
"jsmith@example.com"
],
"billing_email_template": {
"id": 123,
"label": "<string>"
}
},
"recurring_rule": {
"day_of_month": [
123
],
"week_start": 123,
"day": [
123
],
"rule_type": "monthly",
"interval": 123,
"count": 12,
"until": "<string>"
},
"customer": {
"id": 42,
"url": "https://app.pennylane.com/api/external/v2/customers/42"
},
"customer_invoice_data": {
"label": "Demo label",
"currency": "EUR",
"amount": "230.32",
"currency_amount": "230.32",
"currency_amount_before_tax": "196.32",
"exchange_rate": "1.0",
"currency_tax": "34.0",
"language": "fr_FR",
"customer_invoice_template": {
"id": 123
},
"discount": {
"type": "absolute",
"value": "25"
},
"pdf_invoice_free_text": "Thanks for paying this invoice",
"pdf_invoice_subject": "Invoice subject",
"pdf_description": "Invoice description",
"special_mention": "Additional details",
"invoice_line_sections": {
"url": "https://app.pennylane.com/api/external/v2/billing_subscriptions/42/invoice_line_sections"
},
"invoice_lines": {
"url": "https://app.pennylane.com/api/external/v2/billing_subscriptions/42/invoice_lines"
}
},
"created_at": "2023-08-30T10:08:08.146343Z",
"updated_at": "2023-08-30T10:08:08.146343Z"
}
This endpoint allows you to create a subscription. Pennylane will generate the customer invoice each month. You can also link the subscription to a GoCardless mandate.
ℹ️ This endpoint requires one of the following scopes:
billing_subscriptions:all
curl --request POST \
--url https://app.pennylane.com/api/external/v2/billing_subscriptions \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"start": "2023-01-01",
"mode": {
"type": "email",
"email_settings": {
"recipients": [
"customer@example.com",
"accounting@example.com"
]
}
},
"payment_conditions": "upon_receipt",
"payment_method": "offline",
"recurring_rule": {
"type": "yearly",
"interval": 123,
"count": 12
},
"customer_id": 42,
"customer_invoice_data": {
"currency": "EUR",
"customer_invoice_template_id": 42,
"pdf_invoice_free_text": "Additional free field",
"pdf_invoice_subject": "Invoice title",
"pdf_description": "Invoice description",
"special_mention": "Additional details",
"language": "fr_FR",
"discount": {
"type": "absolute",
"value": "25"
},
"invoice_line_sections": [
{
"title": "Invoice line section title",
"description": "Description of the invoice line section",
"rank": 1
}
],
"invoice_lines": [
{
"label": "Demo label",
"quantity": 12,
"unit": "piece",
"raw_currency_unit_price": "33.333334",
"vat_rate": "FR_200",
"description": "<string>",
"section_rank": 1,
"discount": {
"type": "absolute",
"value": "25"
},
"ledger_account_id": 1255,
"product_id": 42
}
]
}
}'
{
"id": 42,
"next_occurrence": "2023-01-01",
"prev_occurrence": "2023-01-01",
"stopped_at": "2023-08-30T10:08:08.146343Z",
"start": "2023-01-01",
"finish": "2023-12-31",
"status": "draft",
"mode": "awaiting_validation",
"activated_at": "2023-08-30T10:08:08.146343Z",
"payment_conditions": "upon_receipt",
"payment_method": "offline",
"email_settings": {
"recipients": [
"jsmith@example.com"
],
"billing_email_template": {
"id": 123,
"label": "<string>"
}
},
"recurring_rule": {
"day_of_month": [
123
],
"week_start": 123,
"day": [
123
],
"rule_type": "monthly",
"interval": 123,
"count": 12,
"until": "<string>"
},
"customer": {
"id": 42,
"url": "https://app.pennylane.com/api/external/v2/customers/42"
},
"customer_invoice_data": {
"label": "Demo label",
"currency": "EUR",
"amount": "230.32",
"currency_amount": "230.32",
"currency_amount_before_tax": "196.32",
"exchange_rate": "1.0",
"currency_tax": "34.0",
"language": "fr_FR",
"customer_invoice_template": {
"id": 123
},
"discount": {
"type": "absolute",
"value": "25"
},
"pdf_invoice_free_text": "Thanks for paying this invoice",
"pdf_invoice_subject": "Invoice subject",
"pdf_description": "Invoice description",
"special_mention": "Additional details",
"invoice_line_sections": {
"url": "https://app.pennylane.com/api/external/v2/billing_subscriptions/42/invoice_line_sections"
},
"invoice_lines": {
"url": "https://app.pennylane.com/api/external/v2/billing_subscriptions/42/invoice_lines"
}
},
"created_at": "2023-08-30T10:08:08.146343Z",
"updated_at": "2023-08-30T10:08:08.146343Z"
}
The access token received from the authorization server in the OAuth 2.0 flow.
Renders the created billing subscription
The response is of type object
.
Was this page helpful?