billing
POST /v1/payment-methods/paypal/confirm
Finish saving a PayPal account after the buyer approved it.
Аутентификация
API кілтін bearer токені ретінде жіберіңіз. Бұл соңғы нүкте сипаттамада арнайы рұқсатты көрсетпейді, сондықтан болжағаннан гөрі кілтіңізге қажетті ең аз рұқсатты беріп, жауапты тексеріңіз.
Ұйымыңыздың идентификаторы орналасатын жер
Бұл соңғы нүкте JSON корпусында өріс ретінде org_id қабылдайды.
Сіздің ұйым идентификаторыңыз басқару панеліндегі API кілттері экранында, кілттің өзінің жанында орналасқан. Бұл сіз жасайтын әрбір шақырудағы бірдей идентификатор.
Әрекет етіп көру
Бұрыштық жақшалардағы кез келген нәрсені өз мәндеріңізбен, ал кілт орналастырушысын басқару тақтасынан алынған кілтпен алмастырыңыз.
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.
Сұрау денесі
| Аты | Tүрі | Міндетті | Мазмұны |
|---|---|---|---|
setup_token_id | string | Иә | The setup_token_id returned by POST /v1/payment-methods/paypal. |
org_id | string | Жоқ | 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. |
Жауап
| Аты | Tүрі | Міндетті | Мазмұны |
|---|---|---|---|
id | string | Иә | — |
gateway | string<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). |
status | string<pending, active, expired, revoked> | Иә | Only active is chargeable; pending means the gateway has not confirmed it yet. |
role | string<, 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_by | string<, 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_type | string | Иә | 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_renew | boolean | Иә | 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… |
brand | string | Иә | — |
last4 | string | Иә | — |
exp_month | integer | Жоқ | — |
exp_year | integer | Жоқ | — |
holder_name | string | Жоқ | — |
confirmed_at | string | Жоқ | When the gateway confirmed the mandate. Null while pending. |
created_at | string | Иә | — |
Бұл соңғы нүкте қайтара алатын қателер
401 · 403 · 409 · 422 · 429 · 503