☰ Menü · Hatalar
Başlarken
Hatalar
HTTP durum kodu sorunun türünü, JSON gövdesi ise tam olarak ne olduğunu ve sorun tek bir alanla ilgiliyse hangi alan olduğunu söyler.
JSON
{
"error": {
"type": "invalid_request_error",
"code": "parameter_invalid",
"message": "consent: must be true: confirm the guest agreed to data processing",
"param": "consent"
},
"request_id": "req_0d4d15b86c484738b46b"
}- error.typestring
- Genel sınıf:
invalid_request_error,authentication_error,permission_error,idempotency_error,rate_limit_error,api_error. - error.codestring
- Makinenin okuyacağı sabit kod, örneğin
member_not_found. Kodunuzu mesaja göre değil, bu alana göre dallandırın. - error.messagestring
- Geliştiriciye yönelik açıklama. Değişebilir, ayrıştırmaya çalışmayın.
- error.paramstring
- Hatanın ilgili olduğu istek alanı (varsa).
- request_idstring
- Her yanıtın
X-Request-Idbaşlığında da bulunur. Bize yazarken ekleyin.
Durum kodları
| Durum | Anlamı | Ne yapmalı |
|---|---|---|
| 200, 201 | Başarılı. 201 yeni bir kayıt oluşturulduğunu gösterir. | |
| 400 | İstek hatalı veya bir alan geçersiz. | İsteği düzeltin. Aynı gövdeyle tekrar denemek aynı yanıtı verir. |
| 401 | Anahtar yok, tanınmıyor veya iptal edilmiş. | Anahtarı kontrol edin. |
| 402 | İstek geçerli ama gerçekleştirilemiyor, örneğin bakiye yetersiz. | Mesajı misafire gösterin. Ayrıntılar gövdededir. |
| 403 | Anahtarda bu istek için gereken izin yok. | Mesajda belirtilen izne sahip bir anahtar kullanın. |
| 404 | Üye, işlem, ürün veya sipariş bu işletmede bulunamadı. | Tanımlayıcıyı kontrol edin. |
| 409 | Çakışma: kart numarası kullanımda, durum geçişine izin verilmiyor veya istek sırasında bakiye değişti. | Koda bakın. balance_conflict durumunda aynı external_id ile tekrar deneyin. |
| 429 | Çok fazla istek. | Retry-After başlığındaki süre kadar (saniye) bekleyin. |
| 500, 502, 503 | Bizim tarafımızda bir sorun oluştu. | Artan aralıklarla ve aynı external_id veya Idempotency-Key ile tekrar deneyin. Hiçbir işlem iki kez uygulanmaz. |
Sık görülen kodlar
| Kod | Ne zaman |
|---|---|
| parameter_invalid | Bir alan eksik veya biçimi hatalı. param alanına bakın. |
| member_not_found | Kart numarası, barkod, telefon veya id ile eşleşen üye yok. |
| card_number_taken | Bu kart numarası bu işletmede başka bir üyeye ait. |
| insufficient_balance | redeem_amount cashback bakiyesinden fazla. Bakiye available alanındadır. |
| redeem_not_supported | Üyenin programında harcanabilecek cashback bakiyesi yok. |
| visit_not_supported | Cashback programı için ziyaret gönderildi. Bunun yerine tutarlı bir fiş gönderin. |
| no_reward_available | Üyenin kullanabileceği kazanılmış ödül yok. |
| transaction_not_found | Bu external_id ile bir işlem yok. |
| invalid_status_transition | Sipariş mevcut durumundan gönderdiğiniz duruma geçemez. |
| missing_scope | Anahtarda gerekli izin yok. |
| hold_required | İşletme cashback'i yalnızca rezervasyonla kullandırıyor. POST /v1/holds ile bir rezervasyon oluşturun. |
| hold_expired, hold_captured, hold_released | Rezervasyon artık kullanılamaz. Yeni bir tane oluşturun. |
| register_id_required | İşletme fişleri kasa bazında numaralandırıyor, bu yüzden register_id zorunludur. |
| check_too_old | closed_at, işletmenin kabul ettiğinden daha eski. |
| scan_required | İşletme bunu yalnızca bu anahtarın kısa süre önce okuttuğu bir kart için kabul ediyor. |
| refund_exceeds_check | İade, fişten geriye kalan tutardan fazla. Kalan tutar refundable alanındadır. |
| adjustments_disabled | İşletme API üzerinden bakiye düzeltmelerine izin vermedi. |
| idempotency_key_reused | Aynı Idempotency-Key farklı bir gövdeyle kullanıldı. |
| rate_limited | Bu anahtardan çok fazla istek geldi. |