- Requête HTTP
- Corps de la requête
- Corps de la réponse
- RemittanceStatementSummary
- BillingPeriod
- RemittanceInstructions
- Événement
Affiche les détails d'une transaction sur un relevé de paiement.
Il s'agit d'une API paginée. Le nombre d'événements de transaction par page peut être spécifié avec numberOfEvents
. Si aucune valeur n'est spécifiée, le nombre maximal d'événements est renvoyé par page (1 000). Chaque requête envoyée à cette API renvoie un nextEventOffset
pointant vers l'événement de transaction suivant dans l'instruction, ainsi que totalEvents
spécifiant le nombre total de transactions dans l'instruction. Si la page actuellement récupérée contient les dernières transactions de l'instruction, nextEventOffset
ne sera pas présent dans la réponse.
La valeur statementId
correspond au requestId
de remittanceStatementNotificationRequest
Si le point de terminaison rencontre une erreur lors du traitement de la requête, la réponse de ce point de terminaison sera de type
.ErrorResponse
Les réponses à cette requête peuvent être vides si cette méthode ne renvoie pas de code HTTP 200. Le corps de la réponse est vide dans les cas où un
avec une description claire pourrait être utilisé pour aider un pirate informatique à comprendre l'identifiant de compte d'intégrateur de paiement d'autres intégrateurs. Dans les cas où la clé de signature ne correspond pas, que l'identifiant de l'intégrateur de paiement est introuvable ou que la clé de chiffrement est inconnue, cette méthode renvoie une réponse HTTP 404 avec un corps vide. Si la signature de la requête a pu être vérifiée, des informations supplémentaires sur l'erreur sont renvoyées dans le corps de la réponse.ErrorResponse
Voici un exemple de requête:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "statement_detail_request_139932019",
"requestTimestamp": "1502551332087"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"statementId": "0123434-statement-abc",
"numberOfEvents": 4
}
Voici un exemple de réponse:
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"eventOffset": 0,
"nextEventOffset": 4,
"totalEvents": 15,
"remittanceStatementSummary": {
"statementDate": "1502521200000",
"billingPeriod": {
"startDate": "1502434800000",
"endDate": "1502434800000"
},
"dateDue": "1502348400000",
"currencyCode": "INR",
"totalDueByIntegrator": "1076000000",
"remittanceInstructions": {
"memoLineId": "stmt-1AB-pp0-invisi"
}
},
"captureEvents": [
{
"eventRequestId": "bWVyY2hhbnQgdHJhbnNhY3Rpb24gaWQ",
"paymentIntegratorEventId": "ioj32SOIjf23oijSDfoij",
"eventCharge": "700000000",
"eventFee": "-28000000"
},
{
"eventRequestId": "Ggghvh78200PQ3Yrpb",
"paymentIntegratorEventId": "iasdf23dSdfijSDfoij",
"eventCharge": "800000000",
"eventFee": "-32000000"
}
],
"refundEvents": [
{
"eventRequestId": "liUrreQY233839dfFFb24gaQM",
"paymentIntegratorEventId": "asd3SDf3f3oijSDfoij",
"eventCharge": "-200000000",
"eventFee": "8000000"
},
{
"eventRequestId": "IIghhhUrreQY233839II9qM==",
"paymentIntegratorEventId": "DFjidoso12FSDFSDE",
"eventCharge": "-150000000",
"eventFee": "6000000"
}
]
}
Requête HTTP
POST https://vgw.googleapis.com/secure-serving/gsp/v1/remittanceStatementDetails/:PIAID
Corps de la requête
Le corps de la requête contient des données présentant la structure suivante :
Représentation JSON |
---|
{
"requestHeader": {
object ( |
Champs | |
---|---|
requestHeader |
OBLIGATOIRE: en-tête commun pour toutes les requêtes. |
paymentIntegratorAccountId |
OBLIGATOIRE: identifiant de compte de l'intégrateur de paiement qui identifie les contraintes contractuelles liées à cette instruction. |
statementId |
OBLIGATOIRE: ID de requête de la notification d'instruction. |
eventOffset |
FACULTATIF: renvoie les événements à partir de ce décalage. Elle doit être définie sur |
numberOfEvents |
FACULTATIF: Nombre d'événements à afficher par page. Si aucune valeur n'est spécifiée ou si elle est supérieure à 1 000, la valeur sera 1 000. |
Corps de la réponse
Objet réponse pour la méthode de l'instruction de paiement détaillée.
Si la requête aboutit, le corps de la réponse contient des données qui ont la structure suivante :
Représentation JSON |
---|
{ "responseHeader": { object ( |
Champs | |
---|---|
responseHeader |
OBLIGATOIRE: en-tête commun pour toutes les réponses. |
remittanceStatementSummary |
OBLIGATOIRE: résumé de ce relevé de paiement. |
eventOffset |
OBLIGATOIRE: décalage d'événement de cette réponse. |
nextEventOffset |
FACULTATIF: décalage du prochain événement à renvoyer. Si cette valeur n'est pas spécifiée, il n'y a plus d'événements à récupérer pour cette instruction. |
totalEvents |
OBLIGATOIRE: nombre total d'événements dans cette instruction. |
totalWithholdingTaxes |
OBLIGATOIRE: somme de toutes les taxes retenues pour ce relevé. Cette valeur est exprimée en micros. |
captureEvents[] |
OBLIGATOIRE: ensemble d'événements de capture. |
refundEvents[] |
OBLIGATOIRE: ensemble d'événements de remboursement. |
reverseRefundEvents[] |
FACULTATIF: ensemble d'événements de remboursement inversé. |
chargebackEvents[] |
FACULTATIF: ensemble d'événements de rejet de débit. |
reverseChargebackEvents[] |
FACULTATIF: Ensemble d'événements de rejet de débit annulé. |
adjustmentEvents[] |
FACULTATIF: ensemble d'événements d'ajustement. Google peut ajouter des événements d'ajustement à sa seule discrétion pour rapprocher les écarts de facturation. Par exemple, si les frais ont été sous-calculs pour un ensemble de transactions précédentes, un ajustement peut être utilisé pour reconstituer l'intégralité de l'intégrateur. |
RemittanceStatementSummary
Objet récapitulatif concernant un relevé de paiement.
Représentation JSON |
---|
{ "statementDate": string, "billingPeriod": { object ( |
Champs | |
---|---|
statementDate |
OBLIGATOIRE: date (en Amérique/Los Angeles) à laquelle cette instruction a été créée. |
billingPeriod |
OBLIGATOIRE: période de facturation couverte par le relevé. |
dateDue |
FACULTATIF: date à laquelle le versement est dû. Elle est exprimée en millisecondes à partir de l'epoch. Il s'agit d'une date (elle commence donc toujours à la première milliseconde de la journée dans le fuseau horaire de facturation). Ce paramètre est défini tant que la valeur de |
currencyCode |
OBLIGATOIRE: code de devise ISO 4217 à trois lettres. |
totalDueByIntegrator |
OBLIGATOIRE: cette valeur est exprimée en micros dans la devise |
remittanceInstructions |
OBLIGATOIRE: indique comment procéder au paiement. |
BillingPeriod
Période de facturation de ce relevé.
Représentation JSON |
---|
{ "startDate": string, "endDate": string } |
Champs | |
---|---|
startDate |
OBLIGATOIRE: date de début de la période de facturation. Elle est exprimée en millisecondes à partir de l'epoch. Il s'agit d'une date (elle commence donc toujours à la première milliseconde de la journée dans le fuseau horaire de facturation). Il s'agit de la première milliseconde du jour de la période de facturation, soit 00:00:00.000 |
endDate |
OBLIGATOIRE: date de fin de la période de facturation. Elle est exprimée en millisecondes à partir de l'epoch. Il s'agit de la dernière milliseconde du dernier jour de la période de facturation (23:59:59.999). |
RemittanceInstructions
Structure contenant les informations sur le paiement de cette notification de paiement.
Représentation JSON |
---|
{ "memoLineId": string } |
Champs | |
---|---|
memoLineId |
OBLIGATOIRE: identifiant à placer sur la ligne de note pour le paiement afin d'identifier le versement. |
Événement
Structure représentant un seul événement inclus dans une instruction de paiement.
Représentation JSON |
---|
{ "eventRequestId": string, "paymentIntegratorEventId": string, "eventCharge": string, "eventFee": string, "presentmentChargeAmount": string, "presentmentCurrencyCode": string, "exchangeRate": string, "nanoExchangeRate": string } |
Champs | |
---|---|
eventRequestId |
OBLIGATOIRE: pour les événements de capture ou de remboursement, il s'agit de l' |
paymentIntegratorEventId |
OBLIGATOIRE: ID que l'intégrateur de paiement a renvoyé pour cet événement. Pour une capture, il s'agit du La longueur de ce champ est variable. En tant qu'intégrateur, l'ID que vous fournissez pour cet événement s'affiche ici. Si l'intégrateur n'a pas fourni de valeur pour l'événement correspondant, ce champ contiendra la même valeur que le champ Pour les événements de remboursement inversé, de rejet de débit et de rejet de débit, il s'agit de l' La longueur et le format de ce champ dépendent du champ source pour chaque ID. Reportez-vous à la documentation de chacun des champs source pour en savoir plus sur les exigences concernant la longueur et le jeu de caractères. Notez en particulier que ce champ peut parfois contenir des ID générés par Google dont la longueur maximale peut être différente de celle des ID générés par l'intégrateur. |
eventCharge |
OBLIGATOIRE: dans le code de devise défini par l'instruction. Si cette valeur est négative, il s'agit de la valeur monétaire transférée de Google vers l'intégrateur de paiement. Si la valeur est positive, il s'agit de l'argent de l'intégrateur de paiement dû à Google. Par exemple, les transactions d'enregistrement seront toujours positives et les transactions de remboursement seront toujours négatives. Les événements de remboursement annulé et de rejet de débit annulé seront toujours positifs. Les événements de rejet de débit sont toujours négatifs. Cette valeur est exprimée en micros. |
eventFee |
OBLIGATOIRE: dans le code de devise défini par l'instruction. Si cette valeur est négative, il s'agit de la valeur monétaire transférée de Google vers l'intégrateur de paiement. Si la valeur est positive, il s'agit de l'argent de l'intégrateur de paiement dû à Google. Par exemple, si un accord indique que Google versera 1% de Cette valeur est exprimée en micros. |
presentmentChargeAmount |
FACULTATIF: montant de la transaction dans la devise de présentation, avant modification des devises. Ce champ suit la même convention de signature que le champ Cette valeur est exprimée en micros. |
presentmentCurrencyCode |
FACULTATIF: code de devise ISO 4217 à trois lettres indiquant la devise de la transaction. |
exchangeRate |
FACULTATIF: taux de change utilisé pour convertir le montant de présentation en montant du règlement (facture). Cette valeur est exprimée en micro points de base (1 point de base = 0,0001 = 0,01%). Autrement dit, pour obtenir le taux de change, vous devez diviser ce champ par 10^10. |
nanoExchangeRate |
FACULTATIF: taux de change utilisé pour convertir le montant présenté en montant du règlement (facture), exprimé en points de base nano. Cette valeur est exprimée en points de base nano (1 point de base = 0,0001 = 0,01%). Autrement dit, pour obtenir le taux de change, vous devez diviser ce champ par 10^13. Ce champ et le taux de change sont renseignés. Ces taux de change sont équivalents, avec une précision différente. Dans les futures versions, le taux de change sera supprimé au profit de nanoTaux de change. |