Method: acceptRemittanceStatementWithModifications

Informuje Google, że oświadczenie określone w tym wniosku zostanie wypłacone po wprowadzeniu w nim zmian, takiej jak opłata za zmianę klasyfikacji podatku VAT.

Jeśli podczas przetwarzania żądania punkt końcowy otrzyma błąd, odpowiedź z tego punktu końcowego będzie typu ErrorResponse.

Jeśli ta metoda nie zwraca kodu HTTP 200, odpowiedzi na to zapytanie mogą być puste. Treść odpowiedzi jest pusta w sytuacjach, gdy można użyć ErrorResponse z wyraźnym opisem, aby ułatwić atakującemu rozpoznanie identyfikatora konta integratora płatności innych integratorów. W takich przypadkach, jeśli klucz podpisywania nie pasuje, nie znaleziono identyfikatora integratora płatności lub klucz szyfrowania jest nieznany, ta metoda zwraca kod HTTP 404 z pustą treścią. Jeśli będzie można zweryfikować podpis w żądaniu, w treści odpowiedzi zostaną zwrócone dodatkowe informacje o błędzie.

Przykładowe żądanie wygląda tak:


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

Przykładowa odpowiedź:


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

Żądanie HTTP

POST https://vgw.googleapis.com/secure-serving/gsp/v1/acceptRemittanceStatementWithModifications/:PIAID

Treść żądania

Treść żądania zawiera dane o następującej strukturze:

Zapis 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.
}
Pola
requestHeader

object (RequestHeader)

REQUIRED: wspólny nagłówek dla wszystkich żądań,

paymentIntegratorAccountId

string

WYMAGANE: to identyfikator konta integratora płatności, który określa ograniczenia umowne związane z tym wyciągiem.

statementId

string

WYMAGANE: identyfikator żądania powiadomienia dotyczącego modyfikacji żądania.

Pole sumy modification_type.

modification_type może mieć tylko jedną z tych wartości:

feeToVatModification

object (FeeToVATModification)

WYMAGANE: poproszono o zmianę przypisania części opłat związanych z podatkiem od towarów i usług (VAT).

Treść odpowiedzi

Obiekt odpowiedzi na metodę acceptRemittanceStatementWithModifications.

W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "acceptRemittanceStatementWithModificationsResultCode": enum (AcceptRemittanceStatementWithModificationsResultCode)
}
Pola
responseHeader

object (ResponseHeader)

WYMAGANE: wspólny nagłówek wszystkich odpowiedzi.

acceptRemittanceStatementWithModificationsResultCode

enum (AcceptRemittanceStatementWithModificationsResultCode)

WYMAGANE: wynik wywołania v1.AcceptRemittanceStatement.

Opłata za zmodyfikowanie VAT

Ten obiekt dostarcza zmiany dotyczące podatku, które zostaną zastosowane do wyciągów.

Zapis JSON
{
  "vatToFeeRatioInMicros": string
}
Pola
vatToFeeRatioInMicros

string (Int64Value format)

WYMAGANE: współczynnik VAT do kwoty opłaty w mikro. Jest to odsetek opłat, którymi trzeba ponownie przypisać podatek VAT. Wartość ta musi być równa zeru lub większa. Zaokrąglanie powinno być zaokrąglone do połowy lub równości w kierunku banku, czyli do równomiernego sąsiada, jeśli obie liczby są w równej odległości (np. 2,5 -> 2, 5,5 -> 6).

Oto przykład obliczania podatku:

  • Opłata za przetwarzanie obejmująca podatek wliczona przez integratora płatności: 1000 USD
  • Stawka podatku: 10%
  • Zatem 1000 USD = (opłata za przetwarzanie) + (10% * opłata za przetwarzanie)
  • Opłata transakcyjna (bez podatku) = 1000 / 1,1 = 909,090909 USD
  • Podatek płatny przez integratora płatności = 1000 – 909,090909 = 90,909091 USD
  • vatToFeeRatioInMicros = (90,909091 / 1000) * 1000000 = 90909,091
  • Półtorawe zaokrąglenie 90909,091 = 90909

AcceptRemittanceStatementWithModificationsResultCode

Wartości w polu enum
UNKNOWN_RESULT Nie ustawiaj nigdy tej wartości domyślnej!
SUCCESS Deklaracja dotycząca płatności została zaakceptowana z modyfikacjami.
INVALID_VAT_MODIFICATION Zmiana podatku VAT nie została zaakceptowana z powodu nieprawidłowego żądania.