Seyahat ödeme API
Seyahat rezervasyonları için Ödeme geçidi API: ödemeden iadeye
Ödeme geçidi API, rezervasyon sitenizin kart verisine hiç dokunmadan yolcunun parasını almasını sağlar. Bu sayfada tek bir kartlı ödemenin çağrıları, ödemenin geçtiği durumlar, seyahat ödemelerinin perakendeden neden daha zor olduğu ve PHPTRAVELS'ın rezervasyon akışınızı seçtiğiniz geçide nasıl bağladığı anlatılıyor.
- Oturum, 3-D Secure, tahsilat
- Tüm ödeme durumları
- Kart, cüzdan, banka, kredi
- Sunucunuzda kart verisi yok
Çağrılar nasıl işler
Tek bir kartlı ödeme, çağrı çağrı
Ödeme geçidi API, bir ödeme şirketinin işyerlerine açtığı web servisleri takımıdır. Sunucunuz belirli bir tutar ve para birimi için ödeme oluşturmasını ister, yolcu kartını geçidin kendi formuna girer, geçit de kart ağı ve kartı veren bankayla konuşur. Sunucunuz kart numarasını hiç görmez; yalnızca bir ödeme kimliği ve durum alır.
Sürece dört taraf katılır. Diyagram tarafları sütun, her mesajı numaralı bir ok olarak gösterir. Adlar geçitten geçide değişir (payment intent, session, order, charge) ama sıra aynıdır.

Kesikli ok bir webhook'tur: geçit sunucunuzu kendiliğinden çağırır, böylece yolcu tarayıcıyı kapatsa bile ödeme rezervasyonu günceller. Her adımın PHPTRAVELS'taki rezervasyona nasıl bağlandığı Ödeme ağ geçidi entegrasyonu sayfasında anlatılıyor.
- Yolcu
- Siteniz
- Geçit
- Kart ağı / banka
01Ödeme sayfasıYolcu Siteniz
Yolcu seyahati gözden geçirip Öde'ye basar. Rezervasyon tedarikçide tutulur, henüz onaylanmamıştır.
02Payment intent veya oturum oluşturmaSiteniz Geçit
Sunucunuz gizli API anahtarıyla tutarı, para birimini, rezervasyon numarasını ve bir idempotency anahtarını gönderir. Geçit bir ödeme kimliği döndürür.
03Barındırılan alanlar veya yönlendirmeGeçit Yolcu
Kart formunu geçit sunar; sayfanızın içinde ya da kendi sayfasında olabilir, böylece kart verisi doğrudan geçide gider.
043-D SecureKart ağı / banka Yolcu
Kartı veren banka isterse yolcu ödemeyi bankacılık uygulamasında veya tek kullanımlık kodla onaylar.
05ProvizyonGeçit Kart ağı / banka
Geçit, kart ağı üzerinden kartı veren bankadan tutarı onaylamasını ister.
06Onaylandı, tutar blokeKart ağı / banka Geçit
Banka parayı kartta ayırır. Henüz para hareket etmemiştir.
07Sonuç sitenize dönerGeçit Siteniz
Yolcu ödeme kimliğiyle sitenize döner. Sunucunuz durumu API'den okur ve rezervasyonu tedarikçide onaylar.
08TahsilatSiteniz Geçit
Tedarikçi onaylayınca sunucunuz tutarın tamamını veya daha azını tahsil eder. Birçok geçit anında tahsilat da yapabilir.
09WebhookGeçit SitenizGeçit kendiliğinden gönderir
Geçit uç noktanıza imzalı bir olay (ödeme tahsil edildi, iade edildi, itiraz edildi) gönderir. Sunucunuz imzayı doğrular ve rezervasyonu günceller.
Ödeme durumları
Bir ödemenin yaşamı, durum makinesi olarak
Her geçit API'si her ödeme için bir durum bildirir. Sözcükler değişir ama hepsi aynı birkaç duruma karşılık gelir ve rezervasyon mantığınız her birine tepki vermelidir.
created
Oluşturuldu
Ödeme tutar ve para birimiyle oluşturuldu, yolcuyu bekliyor.
failedSon
Başarısız
Reddedildi, 3-D Secure tamamlanmadı veya yarıda bırakıldı. Hiçbir tutar çekilmez.
authorized
Provizyon alındı
Kartı veren banka tutarı onayladı ve kartta bloke etti.
voidedSon
İptal edildi
Bloke tahsilattan önce kaldırılır, yolcudan hiçbir şey çekilmez.
captured
Tahsil edildi
Para çekildi ve işyeri hesabınıza aktarılacak.
partially_refundedSon
Kısmen iade edildi
Tahsil edilen tutarın bir kısmı geri verilir, örneğin iptal ücreti düşüldükten sonra.
refundedSon
İade edildi
Tahsil edilen tutarın tamamı karta iade edilir.
Provizyon sonsuza dek sürmez: zamanında tahsil edilmezse bloke sona erer ve banka parayı serbest bırakır. Kısmen iade edilmiş bir ödeme, tahsil edilen tutara kadar yeniden iade edilebilir.
Seyahat neden daha zor
Seyahat ödemeleri neden farklı
Mağaza stokta olanı satar. Seyahat satıcısı, tedarikçinin henüz onaylaması gereken bir rezervasyon için, çoğu zaman yolculuktan aylar önce para alır. Ödeme API'sinin buna uyması gerekir.
01
Şimdi provizyon, sonra tahsilat
Talep üzerine onaylanan oteller, grup tarifeleri ve turlar siparişten saatler ya da günler sonra onaylanır. Önce provizyon alıp onayda tahsil etmek, gerçekleşmeyen rezervasyondan ücret alınmaması demektir.
02
Tedarikçi yine de hayır diyebilir
Bir tarife ödeme ile biletleme arasında tükenebilir. Provizyonda para iptalle serbest kalır; tahsilattan sonra ise iadeye dönüşür.
03
İptal ücretinden sonra kısmi iade
Konaklama veya bilet iptalinde genellikle bir ücret kalır. İade çağrısı, kurallar gerektirdiği kadar sık, ilk ödemeye karşı daha düşük bir tutar gönderir.
04
Çoklu para birimi
Yolcular kendi para birimiyle öder, tedarikçiler kendi para birimiyle fatura keser. Geçit gösterim para birimini desteklemeli, kayıtlarınız da iki tutarı birden tutmalıdır.
05
Yüksek tutarlı dolandırıcılık kontrolleri
Yarın için, başkası adına, yeni kartla ödenen biletler klasik bir dolandırıcılık örüntüsüdür. 3-D Secure, geçidin risk puanlaması ve manuel inceleme kuyruğu yüksek tutarlı siparişleri korur.
06
Aylar sonra gelen chargeback'ler
İtirazlar çoğunlukla seyahatten sonra gelir. Doğrulama sonucunu, rezervasyon belgelerini ve geçit olaylarını bir arada tutun ki itirazı kanıtla yanıtlayabilesiniz.
Ödeme yöntemleri
Bir ödeme geçidi API hangi ödeme şekillerini kapsar
Kart yalnızca bir seçenektir. Yolcular ve acenteler farklı şekillerde öder ve her birinin iadesi de farklı yapılır.
| Yöntem | Nedir | Para ne zaman gelir | İadeler |
|---|---|---|---|
| Kartlar | Geçit üzerinden banka ve kredi kartları; kartı veren banka istediğinde 3-D Secure ile. | Ödeme sırasında provizyon; anında veya tedarikçi onayladığında tahsilat. | API ile aynı karta tam veya kısmi iade. |
| Dijital cüzdanlar | Geçidin desteklediği cüzdan hesapları; örneğin PayPal veya tokenlaştırılmış kart tutan bir telefon cüzdanı. | Ödeme sırasında, yolcu cüzdanda onayladıktan sonra. | Geçit üzerinden cüzdana veya arkasındaki karta geri döner. |
| Banka havalesi | Yolcu veya acente banka hesabınıza para gönderir ve ödeme rezervasyona işlenir. | Günler sonra; ekibiniz tahsilatı onaylayana kadar rezervasyon bekler. | Geçit dışında havale ile geri ödenir. |
| Sonra öde | Rezervasyon şimdi yapılır, ödeme sonra alınır; ödeme geldiğinde ekibiniz kaydeder. | Rezervasyondan sonra, yolcu ödediğinde. | Yalnızca gerçekten ödenen tutar iade edilir. |
| B2B acente cüzdanı veya kredisi | Alt acenteler önceden yükledikleri bakiyeden veya sizin verdiğiniz kredi limitinden öder. | Rezervasyonda düşülür; depozito ve kredi sizin koşullarınıza göre kapatılır. | Acente bakiyesine geri yüklenir. |
Banka havalesi, sonra öde ve cüzdan bakiyesi, geçit değil platformun kendi ödeme seçenekleridir. Acente bakiyeleri ve kredi limitleri B2B acente cüzdanı sayfasında, banka ödemeleri Banka havalesi ile ödeme sayfasında anlatılıyor.
PHPTRAVELS'ta hazır
Hâlihazırda bağlı ödeme geçidi API'leri
Bu geçitler PHPTRAVELS'a zaten bağlı. Sağlayıcıda işyeri hesabı açar, API anahtarlarınızı yönetim paneline girer, sanal ortamında test eder ve yayına alırsınız. Liste, entegrasyon dizinimizdeki canlı listedir.
StripeEntegrasyon rehberiPayPalEntegrasyon rehberi
xMoney
Fawaterk
Cashfree
Paystack
Flutterwave
Adyen
MyFatoorah
SSLcommerz
Razorpay- Tüm ödeme entegrasyonları
Ücretler ve işyeri onayı PHPTRAVELS ile değil, ödeme şirketiyle kararlaştırılır. Burada olmayan bir geçit Özel API entegrasyonu olarak eklenebilir; her birinin nasıl kurulduğunu Ödeme ağ geçidi entegrasyonu sayfası anlatır.
Güvenlik
Kart verisini sisteminizin dışında tutmak
En güvenli kart numarası, sunucunuzun hiç almadığı numaradır. Ödeme geçidi API'si bunu gerektirmeyecek şekilde tasarlanmıştır.
Kart numaralarını asla saklamayın
Kart bilgileri geçide gider, geçit de bir token veya ödeme kimliği döndürür. Veritabanınız yalnızca bu referansı tutar; kart numarasını ya da güvenlik kodunu asla.
Barındırılan alanlar ve yönlendirmeler PCI DSS kapsamını daraltır
PCI DSS, kart verisini işleyen herkese uygulanır. Kart formu geçidin kendi sayfası veya gömülü alanları olduğunda sisteminizin çok daha az kısmı kapsama girer. Hangi öz değerlendirme anketinin geçerli olduğunu bankanız (acquirer) teyit eder.
İmzayla doğrulanan webhook'lar
Her webhook, paylaşılan bir gizli anahtarla üretilmiş bir imza taşır. Sunucunuz imzayı yeniden hesaplar ve eşleşmeyen olayı reddeder; böylece kimse ödenmiş rezervasyonu taklit edemez.
Gizli anahtarlar sunucuda kalır
Tarayıcı yalnızca herkese açık anahtarı alır. Ödeme ve iade oluşturan gizli anahtar sunucu yapılandırmanızda durur; her istek bir idempotency anahtarı taşıdığı için yeniden deneme iki kez tahsilat yapmaz.
1$payload = file_get_contents("php://input"); 2$signature = $_SERVER["HTTP_X_SIGNATURE"] ?? ""; 3$expected = hash_hmac("sha256", $payload, $webhookSecret); 4 5if (!hash_equals($expected, $signature)) { 6 http_response_code(400); exit; // reject 7} 8$event = json_decode($payload, true); 9if (alreadyHandled($event["id"])) exit; // repeat delivery10updateBooking($event["data"]["metadata"]["booking_ref"], $event["type"]);
Genel bir örnektir. Başlık adları ve imzalama yöntemi seçtiğiniz geçide göre değişir.
PHPTRAVELS kendi sunucunuzda barındırılan bir yazılımdır; bu yüzden PCI DSS uyumu yalnızca yazılım için değil, işletmeniz ve sunucunuz için değerlendirilir.
Bir rezervasyonun ödenmesini, tahsil edilmesini ve iade edilmesini görün
Canlı demoda bir seyahat rezerve edin ve ödemeyi yönetim panelinde izleyin. Enterprise planında PHPTRAVELS, uygulamalarınız ve ortaklarınız için kendi REST API'sini ve webhook'larını da sunar.
Uçuş da mı planlıyorsunuz? Tedarikçi tarafını Uçuş API sayfası anlatır; PHPTRAVELS'ın bağladığı tüm API'ler Seyahat API'leri sayfasında listelenir.
Bir ödeme şirketinin sunduğu web servisleri takımıdır; bir web sitesinin kart verisini kendisi saklamadan ödeme oluşturmasını, kartı bankaya onaya göndermesini, parayı tahsil etmesini, iade yapmasını ve webhook ile durum güncellemesi almasını sağlar.
Geçit, web sitenizin konuştuğu kısımdır: kartı güvenle toplar ve isteği iletir. İşlemci ise işlemi kart ağları üzerinden kartı veren bankaya taşır. Birçok sağlayıcı ikisini tek hizmet olarak sunar.
İşletmenizi onaylayan, müşterilerinizin ülkelerini, para birimlerini ve ödeme yöntemlerini destekleyen, provizyon ile tahsilatı ayrı sunan ve kısmi iade yapabilen geçit. Birçok acente küresel bir kart geçidini bölgesel biriyle birlikte kullanır.
Provizyon, yolcunun kartında tutarı ayırır; tahsilat onu çeker. İkisini ayırmak, tedarikçi rezervasyonu onayladıktan sonra ücret almanızı, onaylamazsa blokeyi kaldırmanızı sağlar.
Avrupa Ekonomik Alanı ve Birleşik Krallık dahil birçok bölgede çevrimiçi kart ödemelerinin çoğu için güçlü müşteri doğrulaması gerekir ve kartlar bunu 3-D Secure ile karşılar. Doğrulama adımını geçit API'si yürütür; rezervasyon akışınız sonucu bekler.
Tek başına yapmaz. Geçidin barındırılan alanlarını veya ödeme sayfasını kullanmak kart verisini sunucunuzdan uzak tutar ve PCI DSS kapsamınızı daraltır, ancak bankanızın istediği değerlendirmeyi yine de tamamlamanız gerekir.
Geçit kısmi iadeyi destekliyorsa evet; çoğu kart geçidi destekler. İlk ödemeye karşı daha düşük bir tutarda iade gönderirsiniz, örneğin fiyattan iptal ücreti düşülmüş hali.
Hayır. İşyeri hesabını seçtiğiniz geçitte siz açarsınız ve ücretlerini onlarla belirlersiniz. PHPTRAVELS, yönetim paneline girdiğiniz API anahtarlarıyla rezervasyon platformunuzu o hesaba bağlar.
Evet. Dokümante edilmiş API'si olan her geçit özel entegrasyon olarak eklenebilir; kaynak kodu dahil olduğu için geliştiricileriniz ödeme akışını da genişletebilir.
Keşfetmeye devam edin
Platform hakkında daha fazlası
- Ödeme ağ geçidi entegrasyonuÖdeme, 3D Secure, iadeler ve webhook'lar
- Stripe ödemeleriKart ve cüzdanla ödeme, iade ve para aktarımı
- PayPal ödemeleriUçuş, otel ve turlar için PayPal ile ödeme
- B2B acente cüzdanıAcente yatırımları, kredi limitleri ve acente bazında defter
- Seyahat API'leriGDS, otel, tur, araç ve ödeme API'leri
- Uçuş APIGDS, NDC ve konsolidatör uçuş API'leri tek platformda
