PSS Partner API v1 — Sandbox
Δοκιμαστικό περιβάλλον ενσωμάτωσης της Pro Sales Support
Base URL: https://sandbox.api.prosalessupport.gr/partner/v1
Authentication: header X-API-Key: pss_test_… (το κλειδί σας παραδίδεται ξεχωριστά)
Όριο: 120 αιτήματα/λεπτό ανά κλειδί (429 με Retry-After)
Τεκμηρίωση: Swagger UI · openapi.yaml (ίδιο αρχείο με αυτό που σας στάλθηκε)
Κύκλος ζωής
Κάθε αίτηση προχωρά μόνη της: SUBMITTED → IN_REVIEW (+1′) → SENT_TO_PROVIDER (+3′) → ACTIVE (+5′). Κάθε μετάβαση στέλνει webhook. Τα leads: NEW → CONTACTED → QUALIFIED → CONVERTED (με νέα αίτηση και application_id).
Μαγικές τιμές (στο επώνυμο)
| Επώνυμο | Αποτέλεσμα |
|---|---|
TEST-ACTION | ACTION_REQUIRED με pending_documents: [RECENT_BILL]· συνεχίζει μόλις ανεβάσετε RECENT_BILL |
TEST-REJECT | Απόρριψη στον έλεγχο → CANCELED |
TEST-CANCEL | Ακύρωση από πάροχο (μετά το SENT_TO_PROVIDER) → CANCELED |
TEST-DEACTIVATE | ACTIVE και μετά DEACTIVATED (γραμμή CLAWBACK στην εκκαθάριση) |
TEST-HOLD | Μένει SUBMITTED· την προωθείτε εσείς με /sandbox/…/advance |
TEST-WEBHOOK-FAIL | Κανονική ροή, αλλά οι 2 πρώτες προσπάθειες κάθε webhook αποτυγχάνουν (για δοκιμή retries) |
TEST-UNREACHABLE (lead) | CLOSED με closed_reason: UNREACHABLE |
TEST-NOTINTERESTED (lead) | CLOSED με NOT_INTERESTED |
TEST-NOTCONFIRMED (lead) | CLOSED με NOT_CONFIRMED |
Εργαλεία sandbox (εκτός contract)
Υπάρχουν μόνο εδώ, όχι στην παραγωγή. Χρησιμοποιούν το ίδιο κλειδί και βλέπουν μόνο το κανάλι σας. Πλήρης περιγραφή στο Swagger («Sandbox εργαλεία»).
POST /sandbox/applications/{id}/advance | Επόμενο βήμα τώρα, ή {"to":"ACTIVE"} |
POST /sandbox/leads/{id}/advance | Όμοια για leads |
PUT /sandbox/webhook | {"url":"https://…"}: το callback URL σας |
GET /sandbox/events | Τα events που παρήχθησαν (και χωρίς webhook URL) |
GET /sandbox/webhook-deliveries | Ημερολόγιο αποστολών και retries |
GET /sandbox/echo | Δοκιμαστικός receiver μας: δηλώστε το echo_url ως callback για να δείτε τι στέλνουμε |
POST /sandbox/settlements/publish | Δημοσίευση εκκαθάρισης μήνα + settlement.published |
POST /sandbox/reset | Διαγραφή όλων των δεδομένων του καναλιού σας |
Υπογραφή webhook
X-PSS-Signature: t=<unix seconds>, v1=<hex HMAC-SHA256(secret, t + "." + raw body)>. Απαντήστε 2xx εντός 10″· αλλιώς επαναπροσπάθειες για ~24 ώρες. Dedup με event_id.
const crypto = require('crypto');
function verify(rawBody, header, secret) {
const m = /^t=(\d+),\s*v1=([0-9a-f]{64})$/.exec(header || '');
if (!m || Math.abs(Date.now() / 1000 - m[1]) > 300) return false;
const exp = crypto.createHmac('sha256', secret).update(m[1] + '.' + rawBody).digest();
const got = Buffer.from(m[2], 'hex');
return got.length === exp.length && crypto.timingSafeEqual(got, exp);
}
Pro Sales Support · Partner API v1 · Sandbox. Για τεχνικά ζητήματα απευθυνθείτε στην επαφή σας στην PSS, αναφέροντας το request_id της απόκρισης.