neo-pays

Schnellstart

Vom Konto zum ersten Einzug, in fünf Schritten.

1. Ihr Händlerkonto anlegen

Registrieren Sie sich im Dashboard. Ihr Konto startet im Status pending: Sie können das Dashboard erkunden sowie Schlüssel und Webhooks anlegen, aber API-Aufrufe antworten client_inactive, solange Ihre Unterlagen nicht geprüft sind.

2. Die KYB-Unterlagen vervollständigen

Unter Compliance tragen Sie den gesetzlichen Vertreter und die wirtschaftlich Berechtigten ein und laden den Handelsregisterauszug (RCCM) hoch. Ein abgelehntes Dokument wird immer mit einer Begründung abgelehnt — korrigieren und erneut einreichen; die Historie bleibt erhalten.

Sind die Unterlagen genehmigt, wechselt Ihr Konto auf active und Ihre Schlüssel öffnen sich. Mehr ist von Ihrer Seite nicht nötig.

3. Einen API-Schlüssel anlegen

Unter Entwickler → API-Schlüssel legen Sie einen test-Schlüssel an und, wenn Sie so weit sind, einen live-Schlüssel. Das Geheimnis (sk_test_… oder sk_live_…) wird nur ein einziges Mal angezeigt, bei der Erstellung — legen Sie es sofort in Ihrem Secret-Manager ab.

4. Ihre Asset- und Plattform-Kennungen finden

Fragen Sie vor dem ersten Aufruf, was Ihr Konto nutzen darf:

curl https://api.neo-pays.com/v1/corridors \
  -H "Authorization: Bearer sk_test_..."

Die Antwort liefert die zu verwendenden asset_id und platform_id, je Land und Richtung. GET /v1/assets liefert zusätzlich die Nachkommastellen jedes Assets — daran hängt, was eine kleinste Einheit wert ist.

5. Ihren ersten Einzug anlegen

curl https://api.neo-pays.com/v1/payments \
  -H "Authorization: Bearer sk_test_..." \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: bestellung-1042" \
  -d '{
    "asset_id": 1,
    "amount_minor": "500000",
    "country": "SN",
    "platform_id": 1,
    "client_ref": "bestellung-1042",
    "payer": { "name": "Adama Diop", "phone": "+221771234567", "country": "SN" }
  }'

Die Antwort enthält eine payment_url (oder einen deeplink, oder eine qrcode_url, je nach Rail): zeigen Sie sie Ihrem Kunden.

Beträge sind Zeichenketten, in kleinsten Einheiten. "500000" bei einem Asset ohne Nachkommastellen sind 500 000. Immer eine Zeichenkette, nie eine Gleitkommazahl: die API lehnt ab, was sich nicht exakt zurücklesen lässt.

6. Auf den Webhook hören

Verlassen Sie sich für die Bestätigung nie auf die Browser-Rückkehr — der Kunde kann den Tab schließen. Die Wahrheit ist das Ereignis payment.success, zugestellt an Ihren Endpunkt (einrichten), ersatzweise GET /v1/payments/{id}.

Und danach