billing

POST /v1/payment-methods/paypal/confirm

Finish saving a PayPal account after the buyer approved it.

Όλα τα τελικά σημεία billing

Όλα τα έγγραφα προγραμματιστών

Πισtoποίηση

Στείλτε ένα κλειδί API ως διακριτικό φορέα (bearer token). Αυτό το τελικό σημείο δεν ορίζει μια συγκεκριμένη άδεια στην προδιαγραφή, οπότε δώστε στο κλειδί σας τα ελάχιστα δυνατά δικαιώματα και ελέγξτε την απόκριση αντί να κάνετε υποθέσεις.

Πού μπαίνει το αναγνωριστικό του οργανισμού σας

Αυτό το endpoint δέχεται το πεδίο org_id στο σώμα JSON.

Το αναγνωριστικό του οργανισμού σας βρίσκεται στην οθόνη των κλειδιών API στον πίνακα ελέγχου σας, δίπλα στο ίδιο το κλειδί. Είναι το ίδιο αναγνωριστικό σε κάθε κλήση που πραγματοποιείτε.

Δοκιμάστε το

Ατικatastήstε ό,τι βρίskεtai μέσα σe γώniaδeς μe τis δikές sas timές, kai to placeholder klεidioύ μe éna klεidi apó ton pinaka ελέgchou sas.

curl -X POST https://api.zinndigital.com/v1/payment-methods/paypal/confirm \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "setup_token_id": <string> }'

Συνδεθήκατε; Η κονσόλα API στον πίνακα ελέγχου σας συμπληρώνει το πραγματικό αναγνωριστικό του οργανισμού σας και το δικό σας κλειδί, και εκτελεί το αίτημα στο ζωντανό API, ώστε να μπορείτε να δείτε την πραγματική απόκριση. Ανοίξτε αυτό το τελικό σημείο στην κονσόλα API

Λεπτομέρειες

Exchanges an approved setup token for the permanent vault token and stores the mandate. The organization is read from PayPal's answer and must match the caller's, so a setup token belonging to another account cannot be attached here. Idempotent, and it deliberately races PayPal's VAULT.PAYMENT-TOKEN.CREATED webhook: whichever arrives first writes the mandate and the other converges on it, so a buyer whose browser never returns still ends up with a saved method.

Σώμα αίτησης

ΌνομαΤύpοςΥποχρεωτικόΤι είναι
setup_token_idstringΝαιThe setup_token_id returned by POST /v1/payment-methods/paypal.
org_idstringΌχιOrganization to attach the mandate to. The caller must hold billing.payment.manage in that organization, and PayPal's own answer must name the same organization.

Απάντηση

ΌνομαΤύpοςΥποχρεωτικόΤι είναι
idstringΝαι
gatewaystring<stripe, paypal>ΝαιThe rail holding the mandate. Crypto (NOWPayments) is absent by design — it has no mandate primitive, so those customers are invoiced ahead rather than rebilled (ADR 0011 §6).
statusstring<pending, active, expired, revoked>ΝαιOnly active is chargeable; pending means the gateway has not confirmed it yet.
rolestring<, primary, backup>ΝαιWhich job this mandate does for the organisation. primary is charged first; backup is charged immediately if the primary declines; "" is simply stored. ⛔ Replaced…
removal_blocked_bystring<, subscription, adhoc_charge, reseller_programme>ΝαιEmpty when this method may be removed. Otherwise the obligation that keeps the floor binding: this is the account's last operational way to pay and the named thing is still…
method_typestringΝαιThe gateway's own name for what kind of mandate this is — Stripe's PaymentMethod.type (card, sepa_debit, klarna, kakao_pay, …). Empty on a rail that does not type its…
can_auto_renewbooleanΝαιWhether this mandate can be charged off-session, i.e. whether a renewal can be taken without the customer present. false means the subscription renews manually: the…
brandstringΝαι
last4stringΝαι
exp_monthintegerΌχι
exp_yearintegerΌχι
holder_namestringΌχι
confirmed_atstringΌχιWhen the gateway confirmed the mandate. Null while pending.
created_atstringΝαι

Σφάλματα που μπορεί να επιστρέψει αυτό το τελικό σημείο

401 · 403 · 409 · 422 · 429 · 503