- Solicitação HTTP
- Corpo da solicitação
- Corpo da resposta
- UpiDetails
- TokenizedInstrumentDetails
- AsynchronousCaptureResultCode
Aciona o início de uma operação de transferência de dinheiro entre a conta de um cliente e o integrador. O integrador precisa confirmar a solicitação e realizar as ações necessárias para concluir a captura (por exemplo, coletar um PIN do usuário). O integrador informará o Google sobre o resultado final da captura chamando a API CaptureResultNotification.
A combinação de requestId
no cabeçalho e paymentIntegratorAccountId
é a chave de idempotência e identifica essa transação de maneira exclusiva. Todas as mutações nesta transação (reembolsos) preenchem o valor requestId
no campo captureRequestId
.
Se o endpoint encontrar um erro ao processar a solicitação, o corpo da resposta desse endpoint precisará ser do tipo
.ErrorResponse
Este é um exemplo de solicitação:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 1,
"revision": 0
},
"requestId": "bWVyY2hhbnQgdHJhbnNhY3Rpb24gaWQ",
"requestTimestamp": "1502220196077"
},
"paymentIntegratorAccountId": "InvisiCashIN_INR",
"upiDetails": {
"vpa": "foo@icici"
},
"transactionDescription": "Google - Music",
"currencyCode": "INR",
"amount": "728000000"
}
Um exemplo de resposta é semelhante a:
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"result": "ACKNOWLEDGED",
"paymentIntegratorTransactionId": "aW50ZWdyYXRvciB0cmFuc2FjdGlvbiBpZA"
}
Solicitação HTTP
POST https://www.integratorhost.example.com/v1/asynchronousCapture
Corpo da solicitação
O corpo da solicitação contém dados com a seguinte estrutura:
Representação JSON |
---|
{ "requestHeader": { object ( |
Campos | |
---|---|
requestHeader |
OBRIGATÓRIO: cabeçalho comum para todas as solicitações. |
paymentIntegratorAccountId |
OBRIGATÓRIO: é o identificador da conta do integrador de pagamentos que identifica as restrições contratuais relacionadas a essa transação. |
transactionDescription |
OBRIGATÓRIO: a descrição da transação que pode ser incluída no extrato do cliente. Localizado para o userLocale encontrado no |
currencyCode |
OBRIGATÓRIO: código de moeda ISO 4217 de três letras |
amount |
OBRIGATÓRIO: o valor da compra, em micros da unidade monetária. |
Campo de união
|
|
upiDetails |
OPCIONAL: detalhes de pagamento específicos de instrumentos da UPI. |
tokenizedInstrumentDetails |
OPCIONAL: detalhes de pagamento específicos para instrumentos tokenizados. |
Corpo da resposta
Objeto de resposta para o método de captura.
Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:
Representação JSON |
---|
{ "responseHeader": { object ( |
Campos | |
---|---|
responseHeader |
OBRIGATÓRIO: cabeçalho comum para todas as respostas. |
paymentIntegratorTransactionId |
OBRIGATÓRIO: esse identificador é específico para o integrador e gerado por ele. O integrador conhece essa transação pelo identificador. Para facilitar, este identificador está incluído nos detalhes da remessa |
result |
OBRIGATÓRIO: o resultado da chamada de captura assíncrona. |
UpiDetails
Detalhes sobre a conta do UPI para fazer a captura.
Representação JSON |
---|
{ "vpa": string } |
Campos | |
---|---|
vpa |
OBRIGATÓRIO: o endereço de pagamento virtual (VPA, na sigla em inglês) do usuário usado para transferir dinheiro com o protocolo da UPI. Por exemplo, foo@icici. |
TokenizedInstrumentDetails
Detalhes sobre a conta da qual fazer a captura.
Representação JSON |
---|
{ "googlePaymentToken": string } |
Campos | |
---|---|
googlePaymentToken |
OBRIGATÓRIO: esse é o token que as duas empresas usarão para identificar a conta para compras entre si. |
AsynchronousCaptureResultCode
Códigos de resultado para assíncronoCapture.
Enums | |
---|---|
UNKNOWN_RESULT |
Nunca defina esse valor padrão. |
ACKNOWLEDGED |
A captura foi solicitada, e o integrador vai realizar outras etapas para determinar se ela foi concluída ou recusada. Depois que o integrador souber o resultado da captura, ele informará o resultado ao Google chamando a API captureResultNotification . |
ACCOUNT_CLOSED |
A conta do usuário mantida com o integrador foi encerrada. Se esse valor for retornado, o instrumento do usuário será fechado com o Google. O usuário será forçado a adicionar um novo instrumento passando pelo fluxo de associação novamente. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
A conta do usuário com o integrador foi encerrada, e a conta é suspeita. Se esse valor for retornado, o instrumento do usuário será fechado com o Google. O usuário será forçado a adicionar um novo instrumento passando pelo fluxo de associação novamente. |
ACCOUNT_ON_HOLD |
A conta está em espera. |
ACCOUNT_CLOSED_FRAUD |
A conta do usuário mantida no integrador foi encerrada devido a uma fraude. Se esse valor for retornado, o instrumento do usuário será fechado com o Google. O usuário será forçado a adicionar um novo instrumento passando pelo fluxo de associação novamente. |