Cost+Docs

Schnellstart

Akzeptieren Sie Ihre erste Zahlung in 5 Minuten

Diese Anleitung führt Sie durch die Erstellung und Abwicklung einer Testzahlung mit der Cost+ API. Am Ende haben Sie eine funktionierende Integration, auf der Sie aufbauen können.

Voraussetzungen

Sie sind sich nicht sicher, wie Sie Ihren API-Schlüssel erhalten? Siehe Integration testen für detaillierte Einrichtungsanleitungen.

Schritt 1: Bestellung erstellen

Senden Sie einen POST-Request, um eine Zahlungsbestellung zu erstellen. Ersetzen Sie YOUR_API_KEY durch Ihren Sandbox-API-Schlüssel:

Create an order
curl -X POST https://api.costplus.online/v1/orders/ \
  -u YOUR_API_KEY: \
  -H "Content-Type: application/json" \
  -d '{
    "currency": "EUR",
    "amount": 1295,
    "merchant_order_id": "my-first-order",
    "description": "Test order",
    "return_url": "https://example.com/return",
    "webhook_url": "https://example.com/webhook",
    "transactions": [
      {
        "payment_method": "credit-card"
      }
    ]
  }'

Der amount wird in der kleinsten Währungseinheit (Cent) angegeben. 1295 bedeutet 12,95 EUR.

Die API gibt das vollständige Bestellungsobjekt zurück. Die wichtigsten Felder sind id, status und die payment_url innerhalb der Transaktion:

Response
{
  "id": "4851e31c-4137-4e91-95ef-1df945ee76a2",
  "status": "new",
  "currency": "EUR",
  "amount": 1295,
  "merchant_order_id": "my-first-order",
  "description": "Test order",
  "return_url": "https://example.com/return",
  "webhook_url": "https://example.com/webhook",
  "created": "2026-01-15T12:00:05.433502+00:00",
  "modified": "2026-01-15T12:00:05.553125+00:00",
  "expiration_period": "PT1H",
  "transactions": [
    {
      "id": "d291f03f-a406-428a-967a-4895a46e03fd",
      "payment_method": "credit-card",
      "status": "new",
      "amount": 1295,
      "currency": "EUR",
      "payment_url": "https://pay.costplus.online/4851e31c.../credit-card/d291f03f...",
      "is_capturable": false,
      "expiration_period": "PT30M"
    }
  ]
}

Speichern Sie die id — Sie benötigen sie in Schritt 3.

Schritt 2: Testzahlung abschließen

  1. Öffnen Sie die payment_url aus der Antwort in Ihrem Browser
  2. Geben Sie auf der Zahlungsseite die Testkartendaten ein:
FeldWert
Kartennummer4111 1111 1111 1111
AblaufdatumBeliebiges zukünftiges Datum (z. B. 12/28)
CVCBeliebige 3 Ziffern (z. B. 123)
  1. Senden Sie die Zahlung ab
  2. Sie werden zurück zu Ihrer return_url weitergeleitet

Verlassen Sie sich nicht allein auf die Weiterleitung, um die Zahlung zu bestätigen. Der Kunde könnte seinen Browser schließen, bevor er weitergeleitet wird. Verifizieren Sie immer über die API (Schritt 3) oder Webhooks (Schritt 4).

Schritt 3: Zahlung verifizieren

Rufen Sie die Bestellung ab, um zu bestätigen, dass sie abgeschlossen wurde:

Check order status
curl -u YOUR_API_KEY: \
  https://api.costplus.online/v1/orders/4851e31c-4137-4e91-95ef-1df945ee76a2/

Eine erfolgreiche Zahlung sieht folgendermaßen aus:

Response (completed)
{
  "id": "4851e31c-4137-4e91-95ef-1df945ee76a2",
  "status": "completed",
  "currency": "EUR",
  "amount": 1295,
  "merchant_order_id": "my-first-order",
  "completed": "2026-01-15T12:02:30.123456+00:00",
  "transactions": [
    {
      "id": "d291f03f-a406-428a-967a-4895a46e03fd",
      "payment_method": "credit-card",
      "status": "completed",
      "amount": 1295,
      "currency": "EUR",
      "payment_method_details": {
        "truncated_pan": "1111",
        "card_expiry": "122028"
      }
    }
  ]
}

Der Bestellungs-status ist "completed" — die Zahlung war erfolgreich.

Schritt 4: Webhook verarbeiten (empfohlen)

Wenn sich der Zahlungsstatus ändert, sendet Cost+ einen POST-Request an Ihre webhook_url:

Webhook payload
{
  "event": "status_changed",
  "order_id": "4851e31c-4137-4e91-95ef-1df945ee76a2"
}

Wenn Sie diesen erhalten:

  1. Rufen Sie GET /v1/orders/{order_id}/ auf, um den aktuellen Status zu verifizieren (vertrauen Sie niemals dem Webhook-Payload allein)
  2. Geben Sie HTTP 200 zurück, um den Empfang zu bestätigen
  3. Erfüllen Sie die Bestellung, wenn der Status "completed" ist

Für die lokale Entwicklung verwenden Sie einen Tunnel wie ngrok, um Ihren lokalen Server freizugeben und Webhooks zu empfangen.

Siehe die Webhooks-Anleitung für Wiederholungslogik, Best Practices und Payload-Details.

Wenn Sie keine serverseitige Weiterleitungslogik benötigen, bieten Zahlungslinks einen einfacheren Weg. Erstellen Sie einen Link, teilen Sie die URL mit Ihrem Kunden und überprüfen Sie den Status später.

Create a payment link
curl -X POST https://api.costplus.online/v1/paymentlinks/ \
  -u YOUR_API_KEY: \
  -H "Content-Type: application/json" \
  -d '{
    "merchant_order_id": "invoice-1234",
    "amount": 2500,
    "currency": "EUR",
    "description": "Invoice #1234"
  }'

Die Antwort enthält eine payment_url, die Sie per E-Mail, SMS oder Chat teilen können. Der Kunde kann die Zahlung mehrfach versuchen (bis zu 25 Mal), bis der Link abläuft oder die Zahlung erfolgreich ist.

Siehe die Zahlungslinks-Anleitung für den vollständigen Ablauf.

Nächste Schritte

Sie haben Ihre erste Zahlung abgeschlossen. Hier geht es weiter:

Verwandte Endpunkte

On this page