- HTTP isteği
- İstek metni
- Yanıt metni
- MandateDetails
- MandateWithNotificationDetails
- CaptureContext
- CaptureResultCode
Bir müşterinin Google'daki hesapları ile ödeme işleyici arasında para aktarımı başlatır. Başlık içindeki requestId
ve paymentIntegratorAccountId
kombinasyonu kimlik anahtarıdır ve bu işlemi benzersiz şekilde tanımlar. Bu işlemdeki tüm mutasyonlar (geri ödemeler) captureRequestId
alanındaki requestId
değerini doldurur.
Uç nokta, isteği işlerken bir hatayla karşılaşırsa bu uç noktanın yanıt gövdesi
türünde olmalıdır.ErrorResponse
Örnek bir istek şu şekilde görünür:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "bWVyY2hhbnQgdHJhbnNhY3Rpb24gaWQ",
"requestTimestamp": "1502220196077"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"googlePaymentToken": "ZXhhbXBsZSB1bmlxdWUgcGF5bWVudCB0b2tlbiB2YWx1ZQ",
"transactionDescription": "Google - Music",
"currencyCode": "INR",
"amount": "728000000",
"captureContext": {}
}
Örnek bir yanıt şöyle görünür:
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"result": "SUCCESS",
"paymentIntegratorTransactionId": "aW50ZWdyYXRvciB0cmFuc2FjdGlvbiBpZA"
}
HTTP isteği
POST https://www.integratorhost.example.com/v1/capture
İstek içeriği
İstek gövdesi, aşağıdaki yapıyla birlikte veriler içerir:
JSON gösterimi |
---|
{ "requestHeader": { object ( |
Alanlar | |
---|---|
requestHeader |
ZORUNLU: Tüm istekler için ortak başlık. |
paymentIntegratorAccountId |
ZORUNLU: Bu işlemle ilgili sözleşmeden doğan kısıtlamaları tanımlayan ödeme entegratörü hesap kimliğidir. |
transactionDescription |
ZORUNLU: Müşterinin ekstresine eklenebilecek işlem açıklamasıdır. |
currencyCode |
ZORUNLU: ISO 4217 3 harfli para birimi kodu |
amount |
ZORUNLU: Para biriminin mikro cinsinden satın alma tutarı. |
captureContext |
ZORUNLU: Bu yakalamayla ilgili bağlam. |
fopDetails alanı. ZORUNLU: FOP Bu Yakalama işleminin ayrıntıları. fopDetails şunlardan yalnızca biri olabilir: |
|
googlePaymentToken |
Her iki şirketin birbirleri arasındaki satın alma işlemlerinde hesaplarını tanımlamak için kullanacağı jeton. |
mandateDetails |
Emirlere özel ödeme ayrıntıları |
mandateWithNotificationDetails |
|
|
|
authenticationRequestId |
İSTEĞE BAĞLI: İlişkili kimlik doğrulama isteğinin Bu mevcutsa kullanıcının kimliği bu çağrıdan hemen önce veya otomatik ödeme planı ayarlandığında kimliği doğrulanmış demektir. |
otpVerification |
İSTEĞE BAĞLI: |
Yanıt gövdesi
Yakalama yöntemi için yanıt nesnesi.
Başarılı olursa yanıt metni aşağıdaki yapıyla birlikte verileri içerir:
JSON gösterimi |
---|
{ "responseHeader": { object ( |
Alanlar | |
---|---|
responseHeader |
ZORUNLU: Tüm yanıtlar için ortak başlık. |
paymentIntegratorTransactionId |
İSTEĞE BAĞLI: Bu tanımlayıcı, entegratöre özeldir ve entegratör tarafından oluşturulur. Bu, entegratörün bu işlemi bildiği tanımlayıcıdır. Kolaylık sağlaması açısından bu tanımlayıcı havale ayrıntılarına eklenmiştir. |
userMessage |
KULLANIMDAN KALDIRILDI: Sonuç |
result |
ZORUNLU: Bu yakalamanın sonucu. |
rawResult |
İSTEĞE BAĞLI: Bu yakalamanın ham sonucu. Google'ın risk motoru ve analizlerinin bilgilendirilmesine yardımcı olmak için kullanılır. Reddetme kodu eşleme durumlarında bazen veriler kaybolur. Entegratör, Google'a ham bir kod vermeyi tercih edebilir. Örneğin, bir kredi kartı ağ geçidi (entegre edici) bu alanı, VISA ağından alınan reddetme kodunu aynen Google'a iletmek için kullanabilir. Bu durumda,
|
transactionLimit |
İSTEĞE BAĞLI: Sonuç Bu, istekteki |
currentBalance |
İSTEĞE BAĞLI: Sonuç Bu değer, istekteki |
MandateDetails
Yakalanma yetkisiyle ilgili ayrıntılar.
JSON gösterimi |
---|
{ "mandateId": string } |
Alanlar | |
---|---|
mandateId |
ZORUNLU: |
MandateWithNotificationDetails
Gerekli bildirim ayrıntılarıyla birlikte emrin alınmasıyla ilgili ayrıntılar.
JSON gösterimi |
---|
{ "mandateId": string, "upcomingTransactionNotificationId": string } |
Alanlar | |
---|---|
mandateId |
ZORUNLU: |
upcomingTransactionNotificationId |
ZORUNLU: Bu işlem hakkında önceden bildirimde bulunmak için yapılan |
CaptureContext
Bu nesne, yakalamanın nasıl istendiğine dair bağlam sağlar.
JSON gösterimi |
---|
{ "userIpAddress": string } |
Alanlar | |
---|---|
userIpAddress |
İSTEĞE BAĞLI: Satın alma işlemi oturumdaki bir kullanıcı tarafından yapıldıysa kullanıcının cihazının IP adresidir. Kullanıcı oturumda değilse bu alan boş bırakılır. Söz konusu sözleşme, bu alana ihtiyaç duyulduğunu göstermiyorsa her zaman boş bırakılır. |
CaptureResultCode
Yakalama için sonuç kodları.
Sıralamalar | |
---|---|
UNKNOWN_RESULT |
Bu varsayılan değeri hiçbir zaman ayarlamayın. |
SUCCESS |
Yakalama başarılı, ürünleri teslim edin. |
CHARGE_EXCEEDS_TRANSACTION_LIMIT |
Bu yakalama isteğinin amount değeri, işlem başına sınırı aşıyor. Bu kod kullanılırsa kullanıcıyla mesajlaşma amacıyla transactionLimit alanını doldurun. |
CHARGE_EXCEEDS_DAILY_LIMIT |
Bu hesap, günlük sınırlarını aştığından şu anda satın alma işlemlerinde kullanılamaz. |
CHARGE_EXCEEDS_MONTHLY_LIMIT |
Bu hesap, aylık sınırlarını aştığından şu anda satın alma işlemlerinde kullanılamaz. |
CHARGE_UNDER_LIMIT |
Bu yakalama isteğinin amount , minimum işlem tutarını karşılamıyor. |
INSUFFICIENT_FUNDS |
Bu hesapta, söz konusu yakalamayı garanti etmek için yeterli bakiye yok. |
ACCOUNT_DOES_NOT_SUPPORT_CURRENCY |
Bu hesap, istenen para birimini desteklemiyor. |
ACCOUNT_CLOSED |
Kullanıcının entegratörde bulunan hesabı kapatıldı. Bu değerin döndürülmesi, kullanıcının aracının Google tarafından kapatılmasına neden olur. Kullanıcı, ilişkilendirme akışını tekrar gerçekleştirerek yeni bir araç eklemeye zorlanır. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
Kullanıcının entegratördeki hesabı kapatıldı ve hesabın ele geçirildiğinden şüpheleniliyor. Bu değerin döndürülmesi, kullanıcının aracının Google tarafından kapatılmasına neden olur. Kullanıcı, ilişkilendirme akışını tekrar gerçekleştirerek yeni bir araç eklemeye zorlanır. |
ACCOUNT_ON_HOLD |
Hesap beklemede. |
ACCOUNT_CLOSED_FRAUD |
Kullanıcının entegratördeki hesabı sahtekarlık nedeniyle kapatıldı. Bu değerin döndürülmesi, kullanıcının aracının Google tarafından kapatılmasına neden olur. Kullanıcı, ilişkilendirme akışını tekrar gerçekleştirerek yeni bir araç eklemeye zorlanır. |
GOOGLE_PAYMENT_TOKEN_INVALIDATED_BY_USER |
Hesap etkin, ancak kullanıcı entegratör tarafında GPT geçersiz kılındı. Bu değerin döndürülmesi, kullanıcının aracının Google tarafından kapatılmasına neden olur. Kullanıcı, ilişkilendirme akışını tekrar gerçekleştirerek yeni bir araç eklemeye zorlanır. |
TOKEN_REFRESH_REQUIRED |
Bu işlemin geri döndürülmesi için kullanıcının yenileme akışından geçmesi gerekir. |
OTP_NOT_MATCHED |
OTP, entegratörün gönderdiği ile eşleşmedi. |
OTP_ALREADY_USED |
OTP zaten kullanıldı. |
RISK_DECLINED |
Entegratör tarafındaki bir risk kontrolü nedeniyle işlem reddedildi. Bu, söz konusu ödeme için kalıcı bir hatadır, ancak kullanıcının aracının Google'da kapatılmasına neden olmaz. |
NO_GOOD_FUNDING_SOURCE_AVAILABLE |
Kullanıcının hesabında işlem için ödeme yapabilecek, çalışan bir ödeme kaynağı yapılandırılmış değildir. |
FUNDING_SOURCE_UNAVAILABLE |
Ödemeyi veren kuruluş veya para kaynağı kullanılamıyor. Bu ödeme işlemi yeniden denenirse, ödeme işlemi başarısız olur. Google, iş ortağı tarafından 4xx veya 5xx yanıt kodu döndürdüğünde ödemeleri yeniden dener. Bu nedenle, temel para kaynağı tekrar kullanılabilir olduğunda aynı ödemenin tekrar denenmesi başarılı olursa iş ortakları normalde bu yanıt kodlarından birini döndürmelidir. Bununla birlikte, Google'ın yeniden ödeme denemesi başarısız olduğu teknik nedenler varsa iş ortağı, Google'a aynı ödemeyi tekrar denememesi gerektiğini belirtmek için "FUNDING_SOURCE_UNAVAILABLE" yanıtını gönderebilir. Not: Google, farklı bir requestId kullanarak bu ödemeyi yeniden deneyebilir ancak bu ödeme isteği Reddedildi olarak işaretlenecektir. |
MANDATE_NOT_ACTIVE |
Bu yakalama için kullanılan talimat artık etkin değil. Bu döndürülen değer, kullanıcının talimat aracının Google ile kapatılmasına neden olur. |
UPCOMING_TRANSACTION_NOTIFICATION_EXPIRED |
Kullanıcıya yinelenen talimat ödemesi için gönderilen bildirimin süresi doldu. |