Virheet
Virheet käyttävät tavanomaisia HTTP-tilakoodeja ja yhtä JSON-kirjekuorta:
{ "error": { "type": "invalid_request_error", "code": "amount_invalid", "message": "amount must be a positive decimal string like \"59.90\"", "param": "amount", "request_id": "req_01J…" }}typeon vakaa luokka (alla). Haaraudu koodissasi sen perusteella.codeon tarkempi, koneluettava syy. Uusia koodeja voidaan lisätä; käsittele tuntemattomat koodit niidentype-arvon mukaan.paramnimeää virheellisen kentän, jos sellainen on.messageon tarkoitettu ihmisille ja voi muuttua — älä jäsennä sitä.request_idvastaaRequest-Id-vastausotsaketta.
Virhetyypit
Osio nimeltä “Virhetyypit”type |
Tyypillinen tila | Merkitys | Mitä tehdä |
|---|---|---|---|
invalid_request_error |
400, 422 | Virheellinen JSON, tuntematon kenttä, virheellinen arvo | Korjaa pyyntö; älä yritä uudelleen muuttamattomana |
authentication_error |
401 | Puuttuvat, virheelliset tai mitätöidyt tunnistetiedot | Tarkista avain ja ympäristö |
permission_error |
403 | Todennettu, mutta ei sallittu (käyttöoikeus, rooli, kauppakohtainen rajaus) | Käytä avainta, jolla on oikea käyttöoikeus |
not_found_error |
404 | Objektia ei ole olemassa tai se ei näy organisaatiollesi | Tarkista tunniste ja ympäristö |
conflict_error |
409 | Objektin tila ei salli toimenpidettä (esim. peruminen sen jälkeen, kun siirto on havaittu) | Lue objekti uudelleen ja päätä |
idempotency_error |
409, 422 | Idempotency-Key käytetty uudelleen eri parametreilla |
Käytä uudelle toimenpiteelle uutta avainta |
rate_limit_error |
429 | Liian monta pyyntöä; katso Retry-After |
Odota ja yritä uudelleen |
feature_unavailable_error |
403 | Ominaisuus ei ole vielä käytettävissä tilillesi: tiliä ei ole aktivoitu, nostoja ei ole otettu käyttöön, verkko on poistettu käytöstä tai fiat-kumppania ei ole | Älä yritä uudelleen; ominaisuutta ei ole otettu käyttöön tilillesi |
api_error |
500 | Odottamaton palvelinvirhe (kirjataan pyyntötunnisteen kanssa) | Yritä uudelleen viiveellä samalla Idempotency-Key-arvolla |
Pyyntöjen rungoissa olevia tuntemattomia kenttiä ei ohiteta hiljaisesti, vaan ne torjutaan virheellä
invalid_request_error / parameter_unknown, joten kirjoitusvirheet paljastuvat heti.
Ennen kuin tilisi on aktivoitu
Osio nimeltä “Ennen kuin tilisi on aktivoitu”Live-maksut otetaan käyttöön, kun tilisi on vahvistettu ja hyväksytty. Kunnes tilisi on aktivoitu, nämä koodit ovat odotettavissa:
code |
type |
Milloin |
|---|---|---|
live_keys_disabled |
feature_unavailable_error |
Live-API-avaimen luominen, kun tiliä ei ole vielä aktivoitu |
live_mode_disabled |
feature_unavailable_error |
Live-tilan käyttäminen live-API-avaimella tai hallintapaneelissa, kun tiliä ei ole vielä aktivoitu |
live_processing_unavailable |
feature_unavailable_error |
Maksuaikomuksen luominen ennen kuin live-maksujen käsittely on otettu käyttöön tilillesi |
payouts_unavailable |
feature_unavailable_error |
Noston pyytäminen ennen kuin nostot on otettu käyttöön tilillesi (ne otetaan käyttöön erikseen live-maksuista) |
payouts_live_only |
invalid_request_error (422) |
Nosto-osoitteiden tai nostojen hallinta live-tilan ulkopuolella — nostot siirtävät todellisia varoja |
test_mode_disabled |
feature_unavailable_error |
Muun kuin live-avaimen luominen tai käyttäminen tai muun kuin live-maksun luominen. Jokainen avain ja maksu on live: luo live-API-avain, kun tilisi on aktivoitu |
Mikään niistä ei korjaannu uudelleenyrittämällä. Kun tilisi on aktivoitu, hallintapaneelin käyttöönoton tarkistuslista merkitsee live-tilan vaiheen valmiiksi.
Organisaatioiden väliset pyynnöt
Osio nimeltä “Organisaatioiden väliset pyynnöt”Toisen organisaation objekteja koskevat pyynnöt palauttavat virheen not_found_error, eivät permission_error.
Näin ei paljasteta, että tunniste on olemassa.
SDK:iden virheluokat
Osio nimeltä “SDK:iden virheluokat”| SDK | Perusluokka | Tarkemmat luokat |
|---|---|---|
| TypeScript | FeitPayError |
FeitPayInvalidRequestError, FeitPayAuthenticationError, FeitPayPermissionError, FeitPayNotFoundError, FeitPayConflictError, FeitPayIdempotencyError, FeitPayRateLimitError, FeitPayFeatureUnavailableError, FeitPayAPIError, FeitPayConnectionError |
| Python | FeitPayError |
InvalidRequestError, AuthenticationError, PermissionDeniedError, NotFoundError, ConflictError, IdempotencyError, RateLimitError, FeatureUnavailableError, APIError, APIConnectionError |
| Go | *feitpay.Error |
tarkastele kenttiä Type, Code, Param, Status, RequestID (tai käytä feitpay.ErrorType(err)) |
Yhteysvirheet (connection_error, tila 0) tarkoittavat, ettei vastausta saatu; uudelleenyritys samalla
Idempotency-Key-arvolla on turvallinen.