Erstattungen von Beiträgen

Sie sehen die Dokumentation zu Apigee Edge.
Zur Apigee X-Dokumentation
weitere Informationen

Einführung

Mithilfe der Monetarisierung können Sie Entwicklern Erstattungen für Kauftransaktionen verbuchen. Angenommen, Sie sind ein Mobilfunkanbieter und bieten Entwicklern eine Payment API an, mit der Abonnenten den Kauf einer App oder von Inhalten innerhalb der App in Rechnung stellen können. Jedes Mal, wenn ein Abonnent die API verwendet, um einen Kauf zu tätigen, handelt es sich um eine Kauftransaktion.

Kauftransaktionen können zu Erstattungen führen. So kann es beispielsweise sein, dass die Inhalte nicht bereitgestellt werden oder der Drittanbieter mit dem Kauf nicht zufrieden ist. In diesen Fällen veranlasst der Entwickler eine Erstattung an den Drittanbieter. Durch die Monetarisierung kannst du eine entsprechende Erstattung vornehmen. Dies gilt insbesondere für Pläne zur Umsatzbeteiligung.

Stellen Sie sich vor, der Entwickler, der die Erstattung an den Mobilfunkabonnenten veranlasst hat, hat einen Umsatzbeteiligungsplan für Ihr API-Produkt gekauft. Angenommen, der Plan sieht vor, dass der Entwickler 70% des Netto-/Bruttopreises der Kauftransaktion erhält. Wenn Sie eine Erstattung vornehmen, heben Sie die Kauftransaktion auf. Sie ziehen also 70% von der Zahlung an den Entwickler für den Monat ab, in dem die Erstattung angewendet wurde. Der Monat kann sich von dem Monat unterscheiden, in dem die tatsächliche Kauftransaktion durchgeführt wurde.

Erstattung über die Classic Edge-Benutzeroberfläche posten (nur Edge für Private Cloud)

Du kannst eine Erstattung für jede „erfolgreiche“ Kauftransaktion veröffentlichen, d. h. für eine Kauftransaktion, bei der der Drittanbieter die API erfolgreich belastet hat und für die du noch keine vollständige Erstattung veranlasst hast. Das Posten einer Erstattung führt zur Erstellung einer Erstattungstransaktion mit einer übergeordneten Transaktions-ID, wobei die Transaktions-ID die ID der Kauftransaktion ist.

Du kannst eine Erstattung in Höhe des vollen Betrags der ursprünglichen Kauftransaktion oder eines Teilbetrags vornehmen. Du kannst auch mehrere Teilerstattungen hochladen. Der Gesamtbetrag der Erstattungen darf aber nicht höher als der ursprüngliche Kaufbetrag sein.

So postest du eine Erstattung:

  1. Wähle auf dem Tab „Monetarisierung“ die Option „Erstattungen“ aus.

    Die Seite Erstattungen wird geöffnet.

  2. Wählen Sie im Drop-down-Menü „Billing Month“ (Abrechnungsmonat) den Monat aus, in dem die Kauftransaktion stattgefunden hat. Klicken Sie dann auf „+ Erstattungen“.

    Dadurch wird eine Liste aller erfolgreichen Kauftransaktionen für den ausgewählten Monat angezeigt.

    Du kannst die Liste der Erstattungen nach dem Entwicklernamen oder durch eine Suche nach der tatsächlichen Transaktion filtern.

    Wenn Sie nach Entwickler filtern möchten, wählen Sie ihn im Drop-down-Menü „Entwickler“ aus. Daraufhin wird eine Liste mit den Transaktionen angezeigt, die sich auf den ausgewählten Entwickler beziehen.

    Wenn du nach der Transaktions-ID filtern möchtest, gib die Transaktions-ID des ursprünglichen Kaufs ein, den du erstatten möchtest. Dadurch wird die Transaktion für diese ID zurückgegeben.

  3. Klicken Sie in den Zeilen der Transaktionen, die Sie erstatten möchten, das Kästchen „Auswählen“ an.
  4. Wählen Sie im Dropdown-Menü Art entweder Insgesamt oder Teilweise aus.

    Wenn du „Gesamt“ auswählst, wird der Gesamtbetrag des Kaufs erstattet. Wenn Sie „Teilweise“ auswählen, wird ein Teil des Kaufs erstattet.

    Wenn Sie Teilweise auswählen, geben Sie den Betrag der Teilerstattung in das Feld Betrag ein. Eine Erstattung ist nur bis zum Gesamtbetrag des Kaufs möglich. Wenn Sie bereits eine teilweise Erstattung veranlasst haben, können Sie nur noch einen Betrag eingeben, der bei dem Kauf verbleibt. Wenn die ursprüngliche Kauftransaktion sowohl Brutto- als auch Nettopreise hat, musst du auch angeben, ob der Teilbetrag, den du erstatten möchtest, brutto oder netto ist.

  5. Klicken Sie auf Speichern , um die Rückerstattung zu verarbeiten, oder auf Abbrechen , um den Vorgang abzubrechen.

    Die Erstattung wird im Monat des ursprünglichen Kaufs gebucht, sofern der Abrechnungsmonat noch offen ist. Andernfalls wird die Erstattung bis zum aktuellen Datum verbucht.

    Bei einer teilweisen Erstattung wird die Erstattung für den Teilbetrag verarbeitet und eine Umsatzbeteiligung wird entsprechend dem Anteil des Teilbetrags über den vollständigen Betrag abgezogen. Im Beispiel für eine teilweise Erstattung oben beträgt der Teilbetrag 0,50 ÷ 1,12 = 45% vom Bruttopreis, sodass 45% von der Umsatzbeteiligung des Entwicklers abgezogen werden.

Auf der Benutzeroberfläche prüfen, ob eine Erstattung verarbeitet wurde

Ob eine Erstattung bearbeitet wurde, können Sie prüfen, indem Sie oben auf der Seite „Erstattungen“ den Abrechnungsmonat auswählen. Dies ist der Monat des Kaufs, wenn der Abrechnungsmonat noch offen ist, oder der aktuelle Monat, wenn der Abrechnungsmonat abgeschlossen ist. Daraufhin wird eine Liste aller Erstattungen angezeigt, die in diesem Monat gebucht wurden.

Erstattung über die API veröffentlichen

Um eine Erstattung zu veröffentlichen, senden Sie eine POST-Anfrage an /organizations/{org_name}/monetization-packages/{package_id}/refund-transactions, wobei {package_id} die Identifikation des API-Pakets ist, für das die Erstattung gilt.

Wenn Sie die Anfrage senden, müssen Sie folgende Abfrageparameter angeben:

  • Die Identifizierung der Kauftransaktion, die erstattet wird.
  • Der Umsatztyp (GROSS oder NET) der Kauftransaktion.
  • Der Erstattungsbetrag.
  • Eine Anmerkung mit einer Beschreibung des Grundes für die Erstattung.

Optional kannst du ein API-Paket, für das die Erstattung gilt, als URL-Parameter angeben.

Eine vollständige Liste der URL-Parameter, die du in einer Erstattungsanforderung angeben kannst, findest du unter Konfigurationseinstellungen für Erstattungen.

Mit der folgenden Anforderung wird beispielsweise eine Erstattung für eine Kauftransaktion veranlasst. Der Erstattungsbetrag beträgt 50% des Bruttobetrags der Kauftransaktion.

$ curl -H "Content-Type:application/json" -X POST \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/payment/refund-transactions?revenueType=GROSS&refundAmount=0.5&parentTxId=abf50909-2492-4bf5-8704-ade05f4d43b3&transactionNote=Refund for purchase transaction" \
-u email:password

Die Antwort sollte in etwa so aussehen (nur ein Teil der Antwort wird angezeigt):

{
  "application" : {
    ...
    },
    "product" : [ {
      ...
      
     {
      "customAtt1Name" : "user",
      "description" : "Payment",
      "displayName" : "Payment",
      "id" : "payment",
      "name" : "payment",
      "organization" : {
        ...
      },
      "status" : "CREATED",
      "transactionSuccessCriteria" : "Status=='200 OK'"
    } ],
    ...
  },
  "currency" : "USD",
  "developer" : {
    ...
    "legalName" : "DEV ONE",
    "name" : "Dev One",
    "organization" : {
      ...
    },
    ...
  },
  "endTime" : "2013-09-01 21:59:59",
  "environment" : "PROD",
  "euroExchangeRate" : 0.8123,
  "gbpExchangeRate" : 0.6910,
  "grossPrice" : 0.5,
  "id" : "61f7eb88-f8cc-4cda-afd8-4a61fba3dd33",
  "isRevOnGrossOrNet" : "NET",
  "isVirtualCurrency" : false,
  "notes" : "Refund for purchase transaction",
  "itemDesc" : "test application",
  "netPrice" : 0.4464,
  "orgRevenueShareAmount" : 0.1339,
  "parentId" : "abf50909-2492-4bf5-8704-ade05f4d43b3",
  "pkgId" : "myorg@@@payment",
  "pkgRatePlanProductName" : "Payment",
  ...
  },
  "ratePlanLevel" : "STANDARD",
  "revenueShareAmount" : 0.3125,
  "startTime" : "2013-09-01 21:59:59",
  "status" : "SUCCESS",
  "tax" : 0.0536,
  "taxModel" : "UNDISCLOSED",
  "txProviderStatus" : "SUCCESS",
  "type" : "REFUND",
  "usdExchangeRate" : 1.0724,
  "utcEndTime" : "2013-09-01 21:59:59",
  "utcStartTime" : "2013-09-01 21:59:59"
}

Konfigurationseinstellungen für die Erstattung für die API

Die folgenden Abfrageparameter können in einer Rückerstattungsanforderung angegeben werden:

Name Beschreibung Standard Erforderlich?
monetizationPackageId

Das API-Paket, für das die Erstattung gilt.

Nein
parentTxId

Die zu erstattende Kauftransaktion.

Ja
revenueType

Der Umsatztyp (GROSS oder NET) der Kauftransaktion.

Ja
refundAmount

Der Erstattungsbetrag.

Ja
transactionNote

Ein Textnotiz, in dem der Grund für die Erstattung beschrieben wird.

Ja

Nächste Schritte

Unter Monetarisierungsjobs planen können Sie nachlesen, wie Sie Jobs im Zusammenhang mit der Monetarisierung und automatisch geplante Jobs planen.