Anwendungsbeispiele für Callbacks

Die folgenden Callbacks werden von Frisbii Media ausgelöst:

Callback Typ

Entity Typ

Entity

Beschreibung

CREATION

APP_STORE_ORDER

AppStoreOrder

Erstellen oder Aktualisieren einer bestehenden Bestellung über einen App-Store (Apple oder Google)

CHANGE

APP_STORE_SUBSCRIPTION

AppStoreSubscription

Gesendet beim Aktivieren oder Deaktivieren des App-Store-Abonnements

CREATION

APP_STORE_SUBSCRIPTION

AppStoreSubscription

Gesendet bei der Erstellung eines App-Store-Abonnements

CHANGE

CUSTOMER

Customer

Gesendet bei der Änderung von kundenbezogenen Daten - zum Beispiel Benutzername, Passwort, E-Mail, Name, Anrede, Status oder andere Daten oder Token-Verifizierung

CREATION

CUSTOMER

Customer

Gesendet bei der Kundenerstellung oder Registrierung

DELETION

CUSTOMER

-

Benachrichtigt über Kundenlöschung

CHANGE

CUSTOMER_OPT_IN

OptIns

Gesendet bei der Erstellung oder Aktualisierung des Kundenoptins

PAYMENT_FAILED

FAILED_PAYMENT

FailedPaymentNotification

Gesendet im Falle einer fehlgeschlagenen Zahlung

CHANGE

INVOICE

Invoice

Gesendet im Falle einer Rechnungsänderung - Stornierung, Korrektur, Statusänderung

CREATION

INVOICE

Invoice

Gesendet bei der Rechnungserstellung

CREATION

INVOICE_CANCELLATION

Invoice

Gesendet bei Rechnungsstornierung

CREATION

INVOICE_CORRECTION

Invoice

Gesendet bei Rechnungskorrektur

CANCELLATION

MULTIUSER_SUBSCRIPTION

MultiuserSubscription

Gesendet bei Kündigung eines Multi-User-Abonnements

CREATION

MULTIUSER_SUBSCRIPTION

MultiuserSubscription

Gesendet bei Erstellung eines Multi-User-Abonnements

UNDO_CANCELLATION

MULTIUSER_SUBSCRIPTION

MultiuserSubscription

Gesendet bei Kündigungsrücknahme eines Multi-User-Abonnements

CREATION

ORDER

Order

Gesendet bei Bestellung

CONDITIONS_FULFILLED

PURCHASED_ADDON

PurchasedAddon

Gesendet bei der Bestellung, wenn es gekaufte Add-ons gibt

CANCELLATION

SUBSCRIPTION

Subscription

Gesendet, wenn das Abonnement gekündigt wird

CHANGE

SUBSCRIPTION

Subscription

Gesendet, wenn das Abonnement geändert wird

CREATION

SUBSCRIPTION

Subscription

Gesendet bei der Erstellung des Abonnements

ENDED

SUBSCRIPTION

Subscription

Gesendet, wenn das Abonnement endet

UNDO_CANCELLATION

SUBSCRIPTION

Subscription

Gesendet bei Kündigungsrücknahme

💡 Alle Schemas befinden sich im angehängten Dokument unten.

Hinweis: Die folgenden Beispiele sollen einen exemplarischen Eindruck von den zu erwartenden Daten liefern. Der Umfang der Daten kann allerdings variieren. Vor der produktiven Inbetriebnahme sollten die Callbacks auf dem Stage-System geprüft werden.  

Allgemeiner Aufbau eines Callbacks:


{
  "entityType": "CUSTOMER", -> die Entität für die der Callback erstellt wurde (Kunde/Rechnung/Abonnement/etc.)
  "callbackType": "CREATION", -> der entsprechende Callback-Typ (erstellen/ändern/löschen/etc.)
  "entityId": "29", -> entityId entspricht je nach entityType der Kundennummer/Rechnungs-ID/Abonummer/etc.
  "entity": { -> die Daten der Entität laut API Dokumentation
     xxxx
 }
}

Kunde erstellen:

{
  "entityType": "CUSTOMER",
  "callbackType": "CREATION",
  "entityId": "29",
  "entity": {
    "ageVerificationPinEnabled": false,
    "birthday": null,
    "changedBy": "10001",
    "changedByType": "MERCHANT",
    "changedDate": "2024-08-27T11:49:41.389622Z",
    "createdBy": "10001",
    "createdByType": "MERCHANT",
    "createdDate": "2024-08-27T11:49:41.389622Z",
    "customerId": "29",
    "email": "plenigo+callback@plenigo.com",
    "externalSystemId": "",
    "firstName": "Test",
    "invoiceEmail": "",
    "language": "de",
    "lastName": "",
    "miscellaneousData": {},
    "mobileNumber": "",
    "registrationDate": "2024-08-27T11:49:41.389622Z",
    "registrationSource": "Supporter",
    "salutation": "",
    "ssoLoginProviders": null,
    "status": "ACTIVATED",
    "twoFactorEnabled": false,
    "username": "Test"
  }
}

Rechnung erstellen:

{
  "entityType": "INVOICE",
  "callbackType": "CREATION",
  "entityId": "223",
  "entity": {
    "accumulatedPrice": 0.5,
    "analogInvoice": false,
    "cancellationInvoiceId": 0,
    "changedDate": "2024-08-28T00:08:51.914437Z",
    "currency": "EUR",
    "customerEmail": "plenigo@plenigo.com",
    "invoiceAddress": {
      "businessAddress": false,
      "city": "Kempten",
      "country": "DE",
      "firstName": "Test",
      "lastName": "User",
      "postbox": "48576525",
      "postcode": "87435",
      "salutation": "NONE",
      "type": "INVOICE"
    },
    "invoiceCustomerId": "23",
    "invoiceDate": "2024-08-28T00:08:51.868510Z",
    "invoiceId": 223,
    "items": [
      {
        "changedDate": "2024-08-28T00:08:51.916800Z",
        "createdDate": "2024-08-28T00:08:51.916800Z",
        "deliveryAddress": {
          "businessAddress": false,
          "country": "DE",
          "salutation": "NONE",
          "type": "DELIVERY"
        },
        "deliveryCustomerId": "23",
        "discountPercentage": 0,
        "periodEndDate": "2024-08-29T23:59:59.000000Z",
        "periodStartDate": "2024-08-28T00:00:00.000000Z",
        "plenigoOfferId": "O_D0SO735QL1AXZH7FTG",
        "plenigoProductId": "P_DSQ20PV66PNWGK0LPV",
        "plenigoStepId": "S_O38DOOQI9ZE6DESDWC",
        "position": 1,
        "price": 0.5,
        "productId": "P_DSQ20PV66PNWGK0LPV",
        "purchasedAddonId": 0,
        "quantity": 1,
        "subscriptionItemId": 1230101,
        "tax": 7,
        "taxCountry": "DE",
        "taxType": "DIGITALNEWSPAPER",
        "title": "Angebot A kurzes Abo-Intervall Leistungszeitraum 28.08.2024 - 29.08.2024"
      }
    ],
    "orderId": 0,
    "paymentChangedToBilling": false,
    "paymentMethod": "BILLING",
    "paymentMethodId": 0,
    "precursorId": 0,
    "status": "NOT_PAID",
    "successorId": 0,
    "type": "INVOICE"
  }
}

Abonnement ändern:

{
  "entityType": "SUBSCRIPTION",
  "callbackType": "CHANGE",
  "entityId": "1230116",
  "entity": {
    "accessBlocked": false,
    "accountingPeriod": 0,
    "accountingPeriodTimeSpan": "NONE",
    "activePartners": null,
    "analogInvoice": false,
    "cancellationDate": null,
    "cancellationPeriod": 5,
    "cancellationPeriodTimeSpan": "DAY",
    "cancellationReasonUniqueId": "",
    "cancellationType": "ISSUE_BASED_REGULAR",
    "chainId": 1230116,
    "changedBy": "PLENIGO",
    "changedByType": "SYSTEM",
    "changedDate": "2024-08-28T00:00:07.717485Z",
    "chargeableDeliveries": 8,
    "connectedOffer": false,
    "connectedOfferInfo": null,
    "createdBy": "8",
    "createdByType": "CUSTOMER",
    "createdDate": "2024-08-02T09:43:13.41412Z",
    "currency": "EUR",
    "customerCancellationBlocked": false,
    "customerCancellationReasonId": 0,
    "deliveries": 8,
    "deliveryAddressId": 1230037,
    "deliveryCustomerId": "8",
    "deliveryPaused": null,
    "durationPeriod": 0,
    "durationPeriodTimeSpan": "NONE",
    "endDate": null,
    "externalBilling": false,
    "externalSystemId": "",
    "finishedDeliveries": 4,
    "firstBookingDate": "2024-08-02T09:43:13.348227Z",
    "invoiceAddressId": 1230038,
    "invoiceCustomerId": "8",
    "items": null,
    "lastBookingDate": "2024-08-02T09:43:13.348227Z",
    "managedBy": "PLENIGO",
    "managedExternal": false,
    "nextBookingDate": null,
    "openDeliveries": 4,
    "paused": null,
    "paymentMethod": "CREDIT_CARD",
    "paymentMethodDetails": {
      "brand": "AMERICAN_EXPRESS"
    },
    "paymentMethodId": 1230005,
    "paymentPaused": null,
    "paymentTriesDone": 0,
    "plenigoOfferId": "O_628IU8F9CB7I6EH5ZG",
    "precursorId": 0,
    "precursorReason": "",
    "precursorReasonDetail": "",
    "purchaseOrderIndicator": "",
    "recurringDeliveries": false,
    "referenceStartDate": "2024-08-02T00:00:00Z",
    "startDate": "2024-08-02T09:43:13.348191Z",
    "status": "ACTIVE",
    "subscriptionId": 1230116,
    "subscriptionType": "ISSUE_BASED",
    "successorId": 0,
    "successorReason": "",
    "successorReasonDetail": "",
    "suppressInvoiceSending": false,
    "term": 0,
    "termTimeSpan": "NONE"
  }
}

Kunde löschen:

{
  "entityType": "CUSTOMER",
  "callbackType": "DELETION",
  "entityId": "33",
  "entity": null 
}
entityId ist die Kundennummer. Entity = bearbeitete Daten, hier null, da die betroffenen Daten gelöscht wurden.

In-App Abonnement erstellen:

{
  "entityType": "APP_STORE_SUBSCRIPTION",
  "callbackType": "CREATION",
  "version": "3.0",
  "entityId": "1230306",
  "entity": { 
    "accessRightUniqueId": "inappsub",
    "appStoreSubscriptionId": 1230206,
    "cancellationDate": "null",
    "chainId": 1230206,
    "changedBy": "2VYpOnyFbem8IWY9DyoVaLgOAuG", 
    "changedByType": "API",
    "changedDate": 2023-12-29T15:02:05.353082Z",
    "customerId": "29",
    "endDate": "2023-12-29T15:06:32.364Z",
    "externalSystemId: "subscription_1_app_2",
    "startDate": "2023-12-29T15:01:34.393Z",
    "status": "ACTIVE"
   }

}





anhängende Datei(en)
Callback Schema.zip
404kb