Developers API & Widget
EL

Πληρωμές

Καταστάσεις, περιοδικός έλεγχος και συμφωνία πληρωμών

Ελέγξτε την κατάσταση από το backend σας μέχρι να λάβετε ένα τραπεζικό συμπέρασμα. Η callback, η επιστροφή SCA ή το κλείσιμο του γραφικού στοιχείου δεν συνιστά οικονομική επιβεβαίωση.

Ερώτημα από το παρασκήνιο

: "${WR_API_KEY:?Defina WR_API_KEY en el entorno seguro de su backend}"

curl --request POST 'https://api.wealthreader.com/payments/?action=status' \
  --header 'Content-Type: application/json' \
  --header "X-API-Key: ${WR_API_KEY}" \
  --data '{
    "payment_intent_id": "11111111-1111-4111-8111-111111111111",
    "refresh": true
  }'

refresh είναι προαιρετικό και true από προεπιλογή. Wealth Reader περιορίζει τα εξωτερικά ερωτήματα κατά πρόθεση. εφαρμόστε backoff και στο backend σας και μην δημιουργήσετε άλλη πρόθεση εφόσον το αποτέλεσμα είναι διφορούμενο.

Τρεις διαφορετικές διαστάσεις

Πεδίο Βασικές αξίες Τι απαντάτε
state ready, authorization_required, processing, reconciliation_required, τερματικά Ανθεκτική κατάσταση ροής.
interaction_status not_started, authorization_required, processing, completed, finished Είτε η τεχνική αλληλεπίδραση τελείωσε είτε συνεχίζεται.
payment_status not_initiated, pending, unknown, settled, rejected, cancelled, expired, failed Κανονικοποιημένο οικονομικό αποτέλεσμα.

Η μόνη θετική επιβεβαίωση είναι η payment_status: settled, που προέρχεται από ρητή τραπεζική κατάσταση διακανονισμού. Ένα τεχνικό αποτέλεσμα DONE, interaction_status: completed ή payment_status: pending δεν ισοδυναμεί ποτέ με διακανονισμό.

Διφορούμενο αποτέλεσμα

Μια μη αναγνωρισμένη απόρριψη δικτύου, λήξη χρονικού ορίου ή απόκριση μετά την έκδοση της έναρξης αλλάζει την πρόθεση σε reconciliation_required και εκθέτει payment_status: unknown. Η έναρξη δεν επαναλαμβάνεται αυτόματα.

Η τρέχουσα υπηρεσία παροχής δεν προσφέρει ένα ερώτημα που ανασυνθέτει μια ενεργοποίηση της οποίας η απόκριση χάθηκε: το ερώτημα κατάστασης απαιτεί το αδιαφανές περιβάλλον που επιστρέφεται από την ίδια έναρξη. Επομένως, αυτή η υπόθεση χρειάζεται μη αυτόματη συμφωνία. Δεν μπορεί να ανακτηθεί με αυτόματη ανίχνευση ή με αναζήτηση του αναγνωριστικού callback.

Σε αυτή την περίπτωση:

  1. διατηρούν το κλειδί και το αναγνωριστικό ταυτότητας·
  2. δεν δημιουργεί άλλη πρόθεση ούτε εξουσιοδοτεί ξανά.
  3. Ελέγξτε την κατάσταση της πληρωμής μέσω αιτήματος με έλεγχο ταυτότητας στη Wealth Reader και διατηρήστε την ασφαλή αναφορά συμφωνίας σας.
  4. απευθυνθείτε στην υποστήριξη. μην συνεχίσετε τον περιοδικό έλεγχο κατάστασης όταν automatic_recovery είναι false.

Για μια πρόθεση που χρειάζεται μη αυτόματη συμφωνία, το ερώτημα διακομιστή προς διακομιστή μπορεί να περιλαμβάνει:

{
  "payment_status": "unknown",
  "reconciliation_required": true,
  "reconciliation": {
    "automatic_recovery": false,
    "reference": "wrp_recon_0123456789abcdef0123",
    "request_id": "11111111-1111-4111-8111-111111111111",
    "correlation_id": "22222222-2222-4222-8222-222222222222",
    "reason": "initiation_rejected"
  }
}

Αυτά τα αναγνωριστικά είναι αναφορές γραμμένες για υποστήριξη. Δεν παραδίδονται στο widget και δεν επιτρέπουν στον πελάτη να ρωτήσει ή να ανακατασκευάσει την εσωτερική κατάσταση του παρόχου.

reason είναι ένας κωδικός Wealth Reader, ποτέ το κείμενο του παρόχου. initiation_rejected υποδηλώνει ότι ο πάροχος απάντησε με οριστική απόρριψη της έναρξης. initiation_response_unavailable, ότι δεν υπήρξε αναγνωρίσιμη απάντηση. Και στις δύο περιπτώσεις η έναρξη έχει ήδη διαβιβαστεί, επομένως δεν επαναλαμβάνεται: κρατήστε την αναφορά και κλιμακώστε για υποστήριξη.

Επανάκληση και επανάληψη

Η επιστροφή SCA φτάνει σε αποκλειστική callback πληρωμής. Wealth Reader επικυρώνει τη συσχέτιση, προωθεί τις παραμέτρους της τράπεζας στον πάροχο ως έχουν (καταγράφονται απρόβλεπτα ονόματα, δεν απορρίπτουν ποτέ μια ήδη εξουσιοδοτημένη επιστροφή), καταναλώνει την επιστροφή μόνο μία φορά και διατηρεί την κρυπτογραφημένη ευαίσθητη κατάσταση. Μια επανάληψη ανταποκρίνεται μόνο HTTP 409. δεν εξαρτάται από έναν εσωτερικό κωδικό στο σώμα.

Ο έλεγχος ταυτότητας μπορεί να απαιτεί πολλές ανακατευθύνσεις. Κάθε επικυρωμένο REDIRECT συνεχίζει στο ίδιο SCA παράθυρο και ανοίγει ένα νέο callbackσημείο ελέγχου. Δεν δημιουργεί άλλη έναρξη. Ένα αποτέλεσμα DECOUPLED διατηρεί την πρόθεση σε processing για το widget να υποβάλει ερώτημα για την κατάσταση. Ένα ρητό RETRY επαναλαμβάνει μόνο την ολοκλήρωση που έχει ήδη προετοιμαστεί, με περιορισμένη αναμονή και περιορισμένο αριθμό προσπαθειών. ERROR, PASSWORD, MORE_INFO, SELECT_OPTION, ένα άγνωστο αποτέλεσμα ή η εξάντληση αυτών των ορίων καταλήγουν σε συμφωνία, ποτέ σε νέα έναρξη.

Ο έμπορος δεν χρειάζεται να δημοσιεύσει ή να επεξεργαστεί αυτό το callback. Αυτή η έκδοση δεν στέλνει webhook στον έμπορο: ο δημόσιος μηχανισμός επιβεβαίωσης είναι polling από διακομιστή σε διακομιστή.

Κλείσιμο του widget

flow_closed γνωστοποιεί ότι η ορατή αλληλεπίδραση τελείωσε. Το frontend μπορεί να κλείσει το modal, αλλά δεν πρέπει να εμφανίζει "πληρωμένο" για αυτό το συμβάν. Το backend διατηρεί την ευθύνη επιβεβαίωσης ή συμφωνίας της πληρωμής.

Επόμενο βήμα

Συμπληρώστε τη λίστα με Ασφάλεια και δοκιμές.

Τελευταία ενημέρωση