- HTTP request
- Request body
- Response body
- RemittanceStatementSummary
- BillingPeriod
- RemittanceStatementNotificationResponse
- StatementNotificationResult
Notifies the integrator of a new remittance statement.
Statement notifications occur every time a new statement is raised that represents money that Google will pay the integrator or the money that the integrator owes Google.
If the integrator returns a success, then it acknowledges receipt of the statement.
The requestId
is also the statement Id (used elsewhere). The combination of requestId
and paymentIntegratorAccountId
within the header is the idempotency key and uniquely identifies this statement.
If the endpoint encounters an error while processing the request, the response body from this endpoint should be of type
.ErrorResponse
An example request looks like:
{
"requestHeader": {
"protocolVersion": {
"major": 2
},
"requestId": "0123434-statement-abc",
"requestTimestamp": {
"epochMillis": "1502632800000"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD"
},
"remittanceStatementSummary": {
"statementDate": {
"epochMillis": "1502521200000"
},
"billingPeriod": {
"startDate": {
"epochMillis": "1502434800000"
},
"endDate": {
"epochMillis": "1502434800000"
}
},
"dateDue": {
"epochMillis": "1502348400000"
},
"totalDueByIntegrator": {
"amountMicros": "1076000000",
"currencyCode": "INR"
},
"totalProcessedAmount": {
"amountMicros": "1669000000",
"currencyCode": "INR"
},
"totalFeesAmount": {
"amountMicros": "100000000",
"currencyCode": "INR"
},
"totalDirectTaxAmount": {
"amountMicros": "100000",
"currencyCode": "INR"
},
"totalWithholdingTaxAmount": {
"amountMicros": "-1000000",
"currencyCode": "INR"
},
"totalEvents": 15
}
}
An example response looks like:
{
"responseHeader": {
"responseTimestamp": {
"epochMillis": "1502632802000"
}
},
"result": {
"accepted": {}
}
}
HTTP request
POST https://www.integratorhost.example.com/integrator-base-path/refundable-one-time-payment-code-v2/remittanceStatementNotification
Request body
The request body contains data with the following structure:
JSON representation |
---|
{ "requestHeader": { object ( |
Fields | |
---|---|
requestHeader |
REQUIRED: Common header for all requests. |
remittanceStatementSummary |
REQUIRED: Summary of this remittance statement. |
Response body
This method supports multiple return types. For additional information about what 4XX or 5XX HTTP status code to return with an ErrorResponse
, consult the ErrorResponse
object and HTTP status codes documentation.
Possible response messages | |
---|---|
HTTP 200 Status | |
HTTP 4XX / 5XX Status |
|
RemittanceStatementSummary
Summary object about a remittance statement.
JSON representation |
---|
{ "statementDate": { object ( |
Fields | |
---|---|
statementDate |
REQUIRED: Date (in America/Los Angeles) that this statement was created. |
billingPeriod |
REQUIRED: The billing period this statement covers. |
dateDue |
OPTIONAL: The date that the remittance is due. This is represented as a Timestamp. It is a date (and therefore will always start at the first millisecond of the day in the billing timezone). This is set as long as the |
totalDueByIntegrator |
REQUIRED: This value is always positive. |
totalEvents |
REQUIRED: Total number of events in this statement. |
totalProcessedAmount |
TO_BE_REQUIRED: This value is the sum of all the event charges in this statement. |
totalDirectTaxAmount |
OPTIONAL: This value is the sum of all direct taxes applied to all events in this statement. This value is populated for integrators on a contractual basis. |
totalFeesAmount |
TO_BE_REQUIRED: This value is the sum of all fees applied for all events in this statement. |
totalWithholdingTaxAmount |
OPTIONAL: This value is the total withholding tax applied for this statement. This value is populated for integrators on a contractual basis. |
BillingPeriod
Billing period of this statement.
JSON representation |
---|
{ "startDate": { object ( |
Fields | |
---|---|
startDate |
REQUIRED: The start date of the billing period. This is represented as a Timestamp. It is a date (and therefore will always start at the first millisecond of the day in the billing timezone). This is the first millisecond of the day of the billing period, 00:00:00.000 |
endDate |
REQUIRED: The end date of the billing period. This is represented as a Timestamp. This is the last millisecond of the last day of the billing period, 23:59:59.999 |
RemittanceStatementNotificationResponse
Response object for the remittance statement notification method.
JSON representation |
---|
{ "responseHeader": { object ( |
Fields | |
---|---|
responseHeader |
REQUIRED: Common header for all responses. |
result |
REQUIRED: Result of this statement notification. |
StatementNotificationResult
Result of this statement notification.
JSON representation |
---|
{ // Union field |
Fields | |
---|---|
Union field result . The possible results of this statement notification. result can be only one of the following: |
|
accepted |
Integrator acknowledges receipt of this notification. |