Zum Hauptinhalt springen

Abrechnung

Basis-URL: https://app.neuroflash.com/api/workspace-service

Verwalten Sie Abrechnungskontakte und greifen Sie auf das Stripe-Abrechnungsportal zu.

Create stripe checkout sessions

POST/v1/workspaces/{workspaceId}/billing-contacts/{billingContactId}/stripe-checkout-sessions

Antwort

FeldTypBeschreibung
_embeddedobject
couponobject
_embeddedobject
pricingPlanobject
activebooleanAuf true setzen, wenn dieser Tarifplan bei bestehenden und neuen Abonnements konfiguriert werden kann
billingIntervalstring
categoryIdstringID der Kategorie, zu der dieser Plan gehört
displayNamestringName für interne Zwecke wie die Admin-UI oder HubSpot. Sollte Kunden nicht angezeigt werden
idstringID des Tarifplans
importedFromLegacyIdinteger
isDefaultbooleanIst dies der Standardplan für Neukunden?
priceInEuronumberWie viel der Kunde für dieses Abonnement bezahlen muss
pricePerCurrencyobjectEine Zuordnung von Zeichenfolgenschlüsseln zu Gleitkommawerten
stripeBillingPortalEnabledbooleantrue, wenn Abonnements mit diesem Tarifplan im Stripe-Abrechnungsportal selbst verwaltet werden können
stripePriceIdstringID des Preises in Stripe
stripeTrackTokenMeterstring
stripeTrackUsagebooleanVeraltet
tierinteger
trialDaysintegerWie viele Testtage sind für diesen Plan zulässig
pricingPlanCategoryobject
displayNamestring
idstring
translationKeystring
discountPercentagenumber
legacyPricingPlanIdinteger
pricingPlanIdstring
translationKeystring
callbackUrlstringURL, zu der nach erfolgreichem Checkout umgeleitet werden soll.
languagestringSprache, in der die Checkout-Sitzung geöffnet werden soll. Standardmäßig die Sprache des authentifizierten Kunden
legacyPricingPlanIdintegerveraltete ID des Tarifs, für den ein Abonnement erstellt werden soll
pricingPlanIdstring
statusstring
stripeClientSecretstringClient-Geheimnis für diese Checkout-Sitzung. Wird nur direkt nach der Erstellung gesetzt
stripePriceIdstringStripe-ID des Preises aus dem neuen Abonnement, das ausgecheckt wird
stripeSubscriptionIdstringID des Stripe-Abonnements, auf das in diesem Checkout abonniert wird

Beispiel

curl -X POST "https://app.neuroflash.com/api/workspace-service/v1/workspaces/{workspace_id}/billing-contacts/{billing_contact_id}/stripe-checkout-sessions" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{}'

Antwort:

{
"_embedded": {
"coupon": {
"_embedded": {
"pricingPlan": {
"active": "...",
"billingInterval": "...",
"categoryId": "...",
"displayName": "...",
"id": "...",
"importedFromLegacyId": "...",
"isDefault": "...",
"priceInEuro": "...",
"pricePerCurrency": "...",
"stripeBillingPortalEnabled": "...",
"stripePriceId": "...",
"stripeTrackTokenMeter": "...",
"stripeTrackUsage": "...",
"tier": "...",
"trialDays": "..."
},
"pricingPlanCategory": {
"displayName": "...",
"id": "...",
"translationKey": "..."
}
},
"discountPercentage": 0,
"legacyPricingPlanId": 0,
"pricingPlanId": "string",
"translationKey": "string"
}
},
"callbackUrl": "https://app.neuroflash.com/payment-callback?session_id={CHECKOUT_SESSION_ID}",
"language": "de",
"legacyPricingPlanId": 150,
"pricingPlanId": "string",
"status": "complete",
"stripeClientSecret": "string",
"stripePriceId": "string",
"stripeSubscriptionId": "string"
}

Get

GET/v1/workspaces/{workspaceId}/billing-contacts/{billingContactId}

Antwort

FeldTypBeschreibung
activeDiscountstringschreibgeschützt von Stripe synchronisiert: „true" wenn ein Rabatt für diesen Stripe-Kunden aktiv ist
addressLine1stringschreibgeschützt von Stripe synchronisiert: Erste Zeile der Adresse des Abrechnungskontakts
addressLine2stringschreibgeschützt von Stripe synchronisiert: Zweite Zeile der Adresse des Abrechnungskontakts
citystringschreibgeschützt von Stripe synchronisiert: Stadt des Abrechnungskontakts
countrystringschreibgeschützt von Stripe synchronisiert: Land des Abrechnungskontakts
createdAtstring
createdByUserIdstring
defaultPaymentCardNumberLastFourDigitsstring
defaultPaymentMethodstring
defaultPaymentMethodCardBrandstring
emailstringE-Mail-Adresse des Abrechnungskontakts
idstring
importedFromLegacyCustomerIdintegerVeraltet: wird nur benötigt, solange der Import aus der Legacy-API noch aktiv ist ID des Legacy-Kunden, aus dem dieser importiert wurde
namestringName des Abrechnungskontakts
postalCodestringreadonly von Stripe synchronisiert: Postleitzahl des Abrechnungskontakts
statestringreadonly von Stripe synchronisiert: Bundesland des Abrechnungskontakts
stripeCustomerIdstringStripe-Kundenkennung zu Abrechnungszwecken. Könnte optional werden, wenn wir andere Zahlungsanbieter hinzufügen
updatedAtstring

Beispiel

curl "https://app.neuroflash.com/api/workspace-service/v1/workspaces/{workspace_id}/billing-contacts/{billing_contact_id}" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Antwort:

{
"activeDiscount": "string",
"addressLine1": "123 Main St",
"addressLine2": "123 Main St",
"city": "Berlin",
"country": "DE",
"createdAt": "2025-01-14T16:20:59Z",
"createdByUserId": "b0920767-2e30-48d3-80ce-268810bc433a",
"defaultPaymentCardNumberLastFourDigits": "1234",
"defaultPaymentMethod": "acss_debit",
"defaultPaymentMethodCardBrand": "amex",
"email": "max.mustermann@neuroflash.com",
"id": "113c0b32-ed6c-4421-b7da-d1faf238eb56",
"importedFromLegacyCustomerId": 12345,
"name": "Max Mustermann",
"postalCode": "12345",
"state": "Schleswig-Holstein",
"stripeCustomerId": "cus_12345abcdef",
"updatedAt": "2025-01-14T16:20:59Z"
}

Get

GET/v1/workspaces/{workspaceId}/billing-contacts/{billingContactId}/stripe-checkout-sessions/{sessionId}

Antwort

FeldTypBeschreibung
_embeddedobject
couponobject
_embeddedobject
pricingPlanobject
activebooleanAuf true setzen, wenn dieser Tarifplan bei bestehenden und neuen Abonnements konfiguriert werden kann
billingIntervalstring
categoryIdstringID der Kategorie, zu der dieser Plan gehört
displayNamestringName für interne Zwecke wie die Admin-UI oder HubSpot. Sollte Kunden nicht angezeigt werden
idstringID des Tarifplans
importedFromLegacyIdinteger
isDefaultbooleanIst dies der Standardplan für Neukunden?
priceInEuronumberWie viel der Kunde für dieses Abonnement bezahlen muss
pricePerCurrencyobjectEine Zuordnung von Zeichenfolgenschlüsseln zu Gleitkommawerten
stripeBillingPortalEnabledbooleantrue, wenn Abonnements mit diesem Tarifplan im Stripe-Abrechnungsportal selbst verwaltet werden können
stripePriceIdstringID des Preises in Stripe
stripeTrackTokenMeterstring
stripeTrackUsagebooleanVeraltet
tierinteger
trialDaysintegerWie viele Testtage sind für diesen Plan zulässig
pricingPlanCategoryobject
displayNamestring
idstring
translationKeystring
discountPercentagenumber
legacyPricingPlanIdinteger
pricingPlanIdstring
translationKeystring
callbackUrlstringURL, zu der nach erfolgreichem Checkout umgeleitet werden soll.
languagestringSprache, in der die Checkout-Sitzung geöffnet werden soll. Standardmäßig die Sprache des authentifizierten Kunden
legacyPricingPlanIdintegerveraltete ID des Tarifs, für den ein Abonnement erstellt werden soll
pricingPlanIdstring
statusstring
stripeClientSecretstringClient-Geheimnis für diese Checkout-Sitzung. Wird nur direkt nach der Erstellung gesetzt
stripePriceIdstringStripe-ID des Preises aus dem neuen Abonnement, das ausgecheckt wird
stripeSubscriptionIdstringID des Stripe-Abonnements, auf das in diesem Checkout abonniert wird

Beispiel

curl "https://app.neuroflash.com/api/workspace-service/v1/workspaces/{workspace_id}/billing-contacts/{billing_contact_id}/stripe-checkout-sessions/{session_id}" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Antwort:

{
"_embedded": {
"coupon": {
"_embedded": {
"pricingPlan": {
"active": "...",
"billingInterval": "...",
"categoryId": "...",
"displayName": "...",
"id": "...",
"importedFromLegacyId": "...",
"isDefault": "...",
"priceInEuro": "...",
"pricePerCurrency": "...",
"stripeBillingPortalEnabled": "...",
"stripePriceId": "...",
"stripeTrackTokenMeter": "...",
"stripeTrackUsage": "...",
"tier": "...",
"trialDays": "..."
},
"pricingPlanCategory": {
"displayName": "...",
"id": "...",
"translationKey": "..."
}
},
"discountPercentage": 0,
"legacyPricingPlanId": 0,
"pricingPlanId": "string",
"translationKey": "string"
}
},
"callbackUrl": "https://app.neuroflash.com/payment-callback?session_id={CHECKOUT_SESSION_ID}",
"language": "de",
"legacyPricingPlanId": 150,
"pricingPlanId": "string",
"status": "complete",
"stripeClientSecret": "string",
"stripePriceId": "string",
"stripeSubscriptionId": "string"
}

Update

PUT/v1/workspaces/{workspaceId}/billing-contacts/{billingContactId}

Antwort

FeldTypBeschreibung
activeDiscountstringschreibgeschützt von Stripe synchronisiert: „true" wenn ein Rabatt für diesen Stripe-Kunden aktiv ist
addressLine1stringschreibgeschützt von Stripe synchronisiert: Erste Zeile der Adresse des Abrechnungskontakts
addressLine2stringschreibgeschützt von Stripe synchronisiert: Zweite Zeile der Adresse des Abrechnungskontakts
citystringschreibgeschützt von Stripe synchronisiert: Stadt des Abrechnungskontakts
countrystringschreibgeschützt von Stripe synchronisiert: Land des Abrechnungskontakts
createdAtstring
createdByUserIdstring
defaultPaymentCardNumberLastFourDigitsstring
defaultPaymentMethodstring
defaultPaymentMethodCardBrandstring
emailstringE-Mail-Adresse des Abrechnungskontakts
idstring
importedFromLegacyCustomerIdintegerVeraltet: wird nur benötigt, solange der Import aus der Legacy-API noch aktiv ist ID des Legacy-Kunden, aus dem dieser importiert wurde
namestringName des Abrechnungskontakts
postalCodestringreadonly von Stripe synchronisiert: Postleitzahl des Abrechnungskontakts
statestringreadonly von Stripe synchronisiert: Bundesland des Abrechnungskontakts
stripeCustomerIdstringStripe-Kundenkennung zu Abrechnungszwecken. Könnte optional werden, wenn wir andere Zahlungsanbieter hinzufügen
updatedAtstring

Beispiel

curl -X PUT "https://app.neuroflash.com/api/workspace-service/v1/workspaces/{workspace_id}/billing-contacts/{billing_contact_id}" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{}'

Antwort:

{
"activeDiscount": "string",
"addressLine1": "123 Main St",
"addressLine2": "123 Main St",
"city": "Berlin",
"country": "DE",
"createdAt": "2025-01-14T16:20:59Z",
"createdByUserId": "b0920767-2e30-48d3-80ce-268810bc433a",
"defaultPaymentCardNumberLastFourDigits": "1234",
"defaultPaymentMethod": "acss_debit",
"defaultPaymentMethodCardBrand": "amex",
"email": "max.mustermann@neuroflash.com",
"id": "113c0b32-ed6c-4421-b7da-d1faf238eb56",
"importedFromLegacyCustomerId": 12345,
"name": "Max Mustermann",
"postalCode": "12345",
"state": "Schleswig-Holstein",
"stripeCustomerId": "cus_12345abcdef",
"updatedAt": "2025-01-14T16:20:59Z"
}