API documentation
User
Tenant
Feature
Entitlement
User & permissions
Settings
- Settings
- Media
- Webhook
- Notification
Payment
- Payment Method
- Transaction
- SEPA XML
- Open Banking
- Bank Account Transaction
Customer
- Customer
- Customer Address
- Customer Email
- Customer Settings
- Customer Otp
Billing
- Invoice
- Invoice Position Item
- Billing Run
Dunning
- Dunning Document
- Dunning Rule
Subscription
- Subscription
- Subscription Item
- Subscription Measurement
- Billing Group
Offers
Catalogue
- Unit
- Measurement
- Product
- Product Family
- Price Plan
- Coupon
Checkout
- Checkout Link
- Cart
Accounting
Get a offer document
Get a single offer document
curl -X GET \
/offers/{id}/document \
--header "Authorization: Bearer <token>"
{
"id": "<string>",
"subscription": {
"id": "ad8f1c2c-3b1c-4b0a-8b0a-0b0b0b0b0b0b",
"externalId": "<string>",
"paymentMethod": {
"id": "<string>",
"gatewayName": "wallet",
"type": "sepa_debit",
"default": true,
"status": "active",
"enabled": true,
"name": "<string>",
"creationDate": "2023-11-07T05:31:56Z",
"expirationDate": "2023-11-07T05:31:56Z",
"card": {
"brand": "Visa",
"last4": "4242",
"expMonth": 12,
"expYear": 2022,
"cardHolder": "Max Mustermann"
},
"sepaDebit": {
"iban": "DE8937*********3232",
"bic": "COBADEFFXXX",
"mandateReference": "MNDT-2021-123456",
"signingDate": "2021-01-01T00:00:00+00:00"
},
"paypal": {
"email": "max@mustermann.de",
"billingAgreementId": "I-1J5gqz2eZvKYlo2C2X2X2X2X"
}
},
"invoiceAddress": {},
"number": "S-00000001",
"customer": {
"id": "00000000-0000-0000-0000-000000000000",
"customerNumber": "CUSTOMER-000",
"timeZone": "Europe/Berlin",
"firstName": "John",
"lastName": "Doe",
"currencyCode": "EUR",
"companyName": "Acme Inc.",
"datevId": "123456789",
"status": "STATUS_ACTIVE"
},
"plan": {
"id": "ad8f1c2c-3b1c-4b0a-8b0a-0b0b0b0b0b0b",
"family": {
"createdAt": "2021-01-01T00:00:00+00:00",
"updatedAt": "2021-01-01T00:00:00+00:00"
},
"code": "basic-m2023",
"allowCheckout": true,
"status": "<any>",
"changeBehaviour": "upgradeable_and_downgradeable",
"changeApplyBehaviour": "end_of_period"
},
"name": "Fitness M",
"items": [
{
"id": "01F9ZQZJZJQZJZJZJZJZJZJZJZ",
"name": "Fitness M",
"description": "Everything included",
"furtherInformation": "Additional agreements: The contract includes a free drink flatrate.",
"status": "active",
"subscriptionId": "<string>"
}
],
"billingGroup": {},
"periods": [
{
"id": "<string>",
"contractPeriodCount": 123,
"contractPeriod": {},
"cancellationPeriod": {},
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
],
"status": "<any>",
"activatedAt": "2021-01-01T00:00:00+00:00",
"poNumber": "PO-00000001",
"contractDetails": {
"contractStart": "2023-11-07T05:31:56Z",
"contractEnd": "2023-11-07T05:31:56Z"
},
"trialEndsOn": "2021-01-01T00:00:00+00:00",
"customFields": {
"field1": "value1",
"field2": "value2"
},
"createdAt": "2021-01-01T00:00:00+00:00",
"updatedAt": "2021-01-01T00:00:00+00:00",
"defaultPaymentMethod": true,
"defaultInvoiceAddress": true,
"nextBillingDate": "2023-11-07T05:31:56Z",
"lastBillingAt": "2023-11-07T05:31:56Z",
"cancellationDate": "2023-11-07T05:31:56Z",
"cancelledAt": "2023-11-07T05:31:56Z",
"cancellationReason": {
"createdAt": "2021-01-01T00:00:00+00:00",
"updatedAt": "2021-01-01T00:00:00+00:00"
},
"isCancellationPending": true,
"nextPossibleCancellationDate": [
"<string>"
],
"partner": {
"id": "ad8f7e7d-3b3b-4b3b-8b3b-3b3b3b3b3b3b",
"name": "John Doe",
"number": "123456",
"email": "partner@example.com"
}
},
"customer": {
"id": "00000000-0000-0000-0000-000000000000",
"customerNumber": "CUSTOMER-000",
"timeZone": "Europe/Berlin",
"firstName": "John",
"lastName": "Doe",
"currencyCode": "EUR",
"companyName": "Acme Inc.",
"datevId": "123456789",
"status": "STATUS_ACTIVE"
},
"number": "<string>",
"name": "<string>",
"status": "open",
"description": "<string>",
"sections": [
"<string>"
],
"locale": "<string>",
"recipients": [
{
"id": "<string>",
"email": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"role": "read",
"createdAt": "2023-11-07T05:31:56Z",
"signingStatus": "not_started",
"signingLog": [
"<string>"
],
"signedDocument": {
"id": "01F9Z3ZJXZQZJZJZJZJZJZJZJZ",
"mimeType": "image/jpeg",
"fileExtension": "jpg",
"fileName": "invoice.jpg"
},
"link": "https://example.com/offers/1/recipient-1"
}
],
"auditLogDocument": {
"id": "01F9Z3ZJXZQZJZJZJZJZJZJZJZ",
"mimeType": "image/jpeg",
"fileExtension": "jpg",
"fileName": "invoice.jpg"
},
"signedDocument": {
"id": "01F9Z3ZJXZQZJZJZJZJZJZJZJZ",
"mimeType": "image/jpeg",
"fileExtension": "jpg",
"fileName": "invoice.jpg"
},
"signedAt": "2023-11-07T05:31:56Z",
"autoActivateSubscription": true,
"crmDealId": "<string>",
"createdAt": "2021-01-01T00:00:00+00:00",
"updatedAt": "2021-01-01T00:00:00+00:00",
"contactPerson": {
"id": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"email": "<string>",
"avatar": "<string>",
"phone": "<string>",
"linkedin": "<string>",
"position": "<string>",
"website": "<string>"
}
}
Authorizations
Value for the Authorization header parameter.
Path Parameters
Offer identifier
Response
The payment method of the subscription. If null, the default payment method of the customer is used.
wallet
, sepa_debit
, stripe
, fake_provider
, paypal
, bank_transfer
, go_cardless
, testing
sepa_debit
, card
, paypal
, bank_transfer
, wallet
, fake_provider
active
, action_required
, expired
, revoked
, gateway_unconfigured
The card data of the payment method, if the type is "card"
The brand of the card
The last 4 digits of the card
The expiration month of the card
The expiration year of the card
The card holder name
The sepa mandate data of the payment method, if the type is "sepa_debit"
The iban of the sepa mandate
The bic of the sepa mandate
The mandate reference of the sepa mandate
The signing date of the sepa mandate
The invoice address of the subscription. If null, the default invoice address of the customer is used.
The number of the subscription.
2 - 255
Can be empty if the customer is a company.
2 - 255
Can be empty if the customer is a company.
2 - 255
Can be empty. In this case the default currency of the tenant is used.
2 - 255
The ID of the customer in DATEV
2 - 255
STATUS_ACTIVE
, STATUS_ARCHIVED
, STATUS_SUSPENDED
The plan this subscription is based on.
The unique identifier of the plan.
The code of the plan. This is used to identify the plan e.g. in the checkout url.
Allow to checkout this plan. If this is set to false, the plan will not be available in the checkout and can only be assigned to a subscription by the API or in the admin panel. The plan.code is a part of the checkout url.
The status of the plan.
Possible values:
draft
: The plan is a draft and not available for usage in a subscription.active
: The plan is active and can be used in a subscription.archived
: The plan is archived and not longer available for usage in a subscription.inactive
: The plan is inactive and not available for usage in a subscription.
Define the allowed actions after subscription by customer, for upgrade / downgrade.
upgradeable
, downgradeable
, upgradeable_and_downgradeable
, not_changeable
Define the behaviour when a plan change will be applied. If null the default behaviour will be used.
immediately
, end_of_period
The name of the subscription. Defaults to the name of the plan. This will be used in the invoice for the grouping headers.
The selected items of the subscription. Can be charges or addons.
The name of the item which will be used in the invoice. The name is translated based on the customer's locale.
The description of the item which will be used in the invoice. The description is translated based on the customer's locale.
Further information defines additional information for the item which will be displayed in the invoice.
The status of the item.
Possible values:
active
: The item is active and will be billed.canceled
: The item is canceled and will be billed until the end of the contract.pending
: The item is pending and will be billed after the contract start.terminated
: The item is terminated and will not be billed.
active
, canceled
, pending
, terminated
The billing group defines the billing cycle of the subscription.
The status of the subscription.
Possible values:
draft
: The subscription is in draft mode and not active yet.active
: The subscription is active and will be billed.paused
: The subscription is paused and will not be billed.cancelled
: The subscription is cancelled and will not be billed anymore.terminated
: The subscription is terminated and will not be billed anymore.offer
: The subscription is an offer and waiting for acceptance.
The date the subscription was activated.
The po number of the subscription.
The date the trial period ends.
Custom fields for the entity. The keys are the field names and the values are the field values. They need to be configured under "/custom-fields" in the API documentation. The input is validated against the configuration. For more details see Custom Fields Guide
The date and time when the resource was created.
The date and time when the resource was last updated.
The payment method is null, we use the default payment method of the customer.
The invoice address is null, we use the default invoice address of the customer.
The next billing date of the subscription.
The last billing date of the subscription.
The date the subscription will be cancelled.
The date when the subscription was cancelled.
Indicates if the subscription is pending for cancellation. If true, the subscription will be cancelled in the future and the cancellation could be revoked.
2 - 255
Can be empty if the customer is a company.
2 - 255
Can be empty if the customer is a company.
2 - 255
Can be empty. In this case the default currency of the tenant is used.
2 - 255
The ID of the customer in DATEV
2 - 255
STATUS_ACTIVE
, STATUS_ARCHIVED
, STATUS_SUSPENDED
open
, signed
, signing
, archived
read
, sign
pending
, started
, signed
, not_started
, archived
Link to the offer for the recipient
The date and time when the resource was created.
The date and time when the resource was last updated.
The contact person of the offer
Was this page helpful?
curl -X GET \
/offers/{id}/document \
--header "Authorization: Bearer <token>"
{
"id": "<string>",
"subscription": {
"id": "ad8f1c2c-3b1c-4b0a-8b0a-0b0b0b0b0b0b",
"externalId": "<string>",
"paymentMethod": {
"id": "<string>",
"gatewayName": "wallet",
"type": "sepa_debit",
"default": true,
"status": "active",
"enabled": true,
"name": "<string>",
"creationDate": "2023-11-07T05:31:56Z",
"expirationDate": "2023-11-07T05:31:56Z",
"card": {
"brand": "Visa",
"last4": "4242",
"expMonth": 12,
"expYear": 2022,
"cardHolder": "Max Mustermann"
},
"sepaDebit": {
"iban": "DE8937*********3232",
"bic": "COBADEFFXXX",
"mandateReference": "MNDT-2021-123456",
"signingDate": "2021-01-01T00:00:00+00:00"
},
"paypal": {
"email": "max@mustermann.de",
"billingAgreementId": "I-1J5gqz2eZvKYlo2C2X2X2X2X"
}
},
"invoiceAddress": {},
"number": "S-00000001",
"customer": {
"id": "00000000-0000-0000-0000-000000000000",
"customerNumber": "CUSTOMER-000",
"timeZone": "Europe/Berlin",
"firstName": "John",
"lastName": "Doe",
"currencyCode": "EUR",
"companyName": "Acme Inc.",
"datevId": "123456789",
"status": "STATUS_ACTIVE"
},
"plan": {
"id": "ad8f1c2c-3b1c-4b0a-8b0a-0b0b0b0b0b0b",
"family": {
"createdAt": "2021-01-01T00:00:00+00:00",
"updatedAt": "2021-01-01T00:00:00+00:00"
},
"code": "basic-m2023",
"allowCheckout": true,
"status": "<any>",
"changeBehaviour": "upgradeable_and_downgradeable",
"changeApplyBehaviour": "end_of_period"
},
"name": "Fitness M",
"items": [
{
"id": "01F9ZQZJZJQZJZJZJZJZJZJZJZ",
"name": "Fitness M",
"description": "Everything included",
"furtherInformation": "Additional agreements: The contract includes a free drink flatrate.",
"status": "active",
"subscriptionId": "<string>"
}
],
"billingGroup": {},
"periods": [
{
"id": "<string>",
"contractPeriodCount": 123,
"contractPeriod": {},
"cancellationPeriod": {},
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
],
"status": "<any>",
"activatedAt": "2021-01-01T00:00:00+00:00",
"poNumber": "PO-00000001",
"contractDetails": {
"contractStart": "2023-11-07T05:31:56Z",
"contractEnd": "2023-11-07T05:31:56Z"
},
"trialEndsOn": "2021-01-01T00:00:00+00:00",
"customFields": {
"field1": "value1",
"field2": "value2"
},
"createdAt": "2021-01-01T00:00:00+00:00",
"updatedAt": "2021-01-01T00:00:00+00:00",
"defaultPaymentMethod": true,
"defaultInvoiceAddress": true,
"nextBillingDate": "2023-11-07T05:31:56Z",
"lastBillingAt": "2023-11-07T05:31:56Z",
"cancellationDate": "2023-11-07T05:31:56Z",
"cancelledAt": "2023-11-07T05:31:56Z",
"cancellationReason": {
"createdAt": "2021-01-01T00:00:00+00:00",
"updatedAt": "2021-01-01T00:00:00+00:00"
},
"isCancellationPending": true,
"nextPossibleCancellationDate": [
"<string>"
],
"partner": {
"id": "ad8f7e7d-3b3b-4b3b-8b3b-3b3b3b3b3b3b",
"name": "John Doe",
"number": "123456",
"email": "partner@example.com"
}
},
"customer": {
"id": "00000000-0000-0000-0000-000000000000",
"customerNumber": "CUSTOMER-000",
"timeZone": "Europe/Berlin",
"firstName": "John",
"lastName": "Doe",
"currencyCode": "EUR",
"companyName": "Acme Inc.",
"datevId": "123456789",
"status": "STATUS_ACTIVE"
},
"number": "<string>",
"name": "<string>",
"status": "open",
"description": "<string>",
"sections": [
"<string>"
],
"locale": "<string>",
"recipients": [
{
"id": "<string>",
"email": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"role": "read",
"createdAt": "2023-11-07T05:31:56Z",
"signingStatus": "not_started",
"signingLog": [
"<string>"
],
"signedDocument": {
"id": "01F9Z3ZJXZQZJZJZJZJZJZJZJZ",
"mimeType": "image/jpeg",
"fileExtension": "jpg",
"fileName": "invoice.jpg"
},
"link": "https://example.com/offers/1/recipient-1"
}
],
"auditLogDocument": {
"id": "01F9Z3ZJXZQZJZJZJZJZJZJZJZ",
"mimeType": "image/jpeg",
"fileExtension": "jpg",
"fileName": "invoice.jpg"
},
"signedDocument": {
"id": "01F9Z3ZJXZQZJZJZJZJZJZJZJZ",
"mimeType": "image/jpeg",
"fileExtension": "jpg",
"fileName": "invoice.jpg"
},
"signedAt": "2023-11-07T05:31:56Z",
"autoActivateSubscription": true,
"crmDealId": "<string>",
"createdAt": "2021-01-01T00:00:00+00:00",
"updatedAt": "2021-01-01T00:00:00+00:00",
"contactPerson": {
"id": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"email": "<string>",
"avatar": "<string>",
"phone": "<string>",
"linkedin": "<string>",
"position": "<string>",
"website": "<string>"
}
}