Method: acceptRemittanceStatementWithModifications

indique à Google que la déclaration indiquée dans cette demande sera réglée après que des modifications lui seront apportées (par exemple, les frais liés à la reclassification de la TVA) ;

Si le point de terminaison rencontre une erreur lors du traitement de la requête, sa réponse est 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 ErrorResponse avec une description claire pourrait être utilisé pour aider un pirate informatique à comprendre l'identifiant de compte de l'intégrateur de paiement d'autres intégrateurs. Dans les cas où la clé de signature ne correspond pas, l'identifiant de l'intégrateur de paiement est introuvable ou la clé de chiffrement est inconnue, cette méthode renvoie une erreur HTTP 404 avec un corps vide. Si la signature de la requête a pu être vérifiée, des informations supplémentaires concernant l'erreur sont renvoyées dans le corps de la réponse.

Voici un exemple de requête:


{
  "requestHeader": {
    "protocolVersion": {
      "major": 1,
      "minor": 0,
      "revision": 0
    },
    "requestId": "0123434-abc",
    "requestTimestamp": "1502545413098"
  },
  "paymentIntegratorAccountId": "InvisiCashUSA_USD",
  "statementId": "0123434-statement-abc",
  "feeToVatModification": {
    "vatToFeeRatioInMicros": "150000"
  }
}

Voici un exemple de réponse:


{
  "responseHeader": {
    "responseTimestamp": "1519996752221"
  },
  "acceptRemittanceStatementWithModificationsResultCode": "SUCCESS"
}

Requête HTTP

POST https://vgw.googleapis.com/secure-serving/gsp/v1/acceptRemittanceStatementWithModifications/: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 (RequestHeader)
  },
  "paymentIntegratorAccountId": string,
  "statementId": string,

  // Union field modification_type can be only one of the following:
  "feeToVatModification": {
    object (FeeToVATModification)
  }
  // End of list of possible types for union field modification_type.
}
Champs
requestHeader

object (RequestHeader)

OBLIGATOIRE: en-tête commun à toutes les requêtes.

paymentIntegratorAccountId

string

OBLIGATOIRE: identifiant de compte de l'intégrateur de paiement qui identifie les contraintes contractuelles liées à cette déclaration.

statementId

string

OBLIGATOIRE: ID de la requête de notification de relevé modifiée par cette requête.

Champ d'union modification_type.

modification_type ne peut être qu'un des éléments suivants :

feeToVatModification

object (FeeToVATModification)

OBLIGATOIRE: modification demandée pour réattribuer une partie des frais à la taxe sur la valeur ajoutée (TVA).

Corps de la réponse

Objet de réponse pour la méthode acceptRemittanceStatementWithModifications.

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 (ResponseHeader)
  },
  "acceptRemittanceStatementWithModificationsResultCode": enum (AcceptRemittanceStatementWithModificationsResultCode)
}
Champs
responseHeader

object (ResponseHeader)

OBLIGATOIRE: en-tête commun à toutes les réponses.

acceptRemittanceStatementWithModificationsResultCode

enum (AcceptRemittanceStatementWithModificationsResultCode)

OBLIGATOIRE: résultat de l'appel v1.acceptRemittanceStatement.

FeeToVATModification

Cet objet fournit des modifications fiscales à appliquer aux relevés de paiement.

Représentation JSON
{
  "vatToFeeRatioInMicros": string
}
Champs
vatToFeeRatioInMicros

string (Int64Value format)

OBLIGATOIRE: Ratio entre la TVA et les frais, en micros. Il s'agit du pourcentage des frais à réattribuer à la TVA. Il doit être supérieur ou égal à zéro. Les arrondis doivent être "à moitié égal" ou "banquier" arrondi, c'est-à-dire arrondi au voisin pair dans le cas où les deux nombres sont équidistants (par exemple, 2,5 -> 2, 5,5 -> 6).

Voici un exemple de calcul des taxes:

  • Frais de traitement TTC collectés par l'intégrateur de paiement: 1 000 USD
  • Taux de taxe: 10%
  • Ainsi, 1 000 USD = (frais de traitement) + (10% * frais de traitement)
  • Frais de traitement (hors taxes) = 1 000 / 1,1 = 909,090909 USD
  • Taxe payée par l'intégrateur de paiement = 1 000 - 909,090909 = 90,909091 USD
  • vatToFeeRatioInMicros = (90,909091 / 1 000) x 1 000 000 = 90 909,091
  • Arrondissement à moitié égale à 90909,091 = 90909

AcceptRemittanceStatementWithModificationsResultCode

Enums
UNKNOWN_RESULT Ne définissez jamais cette valeur par défaut.
SUCCESS La déclaration de paiement a bien été acceptée et les modifications ont bien été apportées.
INVALID_VAT_MODIFICATION La modification de la TVA n'a pas été acceptée en raison d'une demande non valide.