Add Tip
Introduction
This endpoint is used to handle the one-time and recurring payment transactions to add tips.
Comparison
Compared to the older model, the new input model requires just a few parameters, as explained in detail below.
URL
/Billing/Payments/{subscriptionId}/AddTip
/Payment/Tip
Method
POST
POST
Input Example
{
"ExternalPaymentMethodId":"10200849",
"CustomerId":null,
"TipAmount":0.0,
"CurrencyCode":null,
"PaymentMethodType":0,
"NewPaymentMethod":null,
"TypeOfPayment":null,
"ParentEventId":0,
"Last4Digits":null,
"AuthToken":"10200849",
"AuthTokenPaymentMethodType":2,
"IsTipAutoRenew":null,
"ApplyToCredit":false,
"ValidateMaxAmount":false,
"InvoiceId":null,
"CreateMapOnTheFly":false,
"Notes":null,
"Token":null,
"RenewalTerm":"Month",
"RenewalLength":"1",
"RateCode":null,
"RestartDate":null
}{
"PaymentMethodId":789771,
"SubscriptionId":245316,
"TipAmount":2.0,
"TotalAmount":7.0,
"IsTipAutoRenew":true,
"ProcessingFeeAmount": 2.0,
"ProcessingFeeTaxAmount": 3.0
}Add Tip
POST /Payment
This endpoint is used to handle the one-time and recurring payment transactions to add tips.
Note: The parameters marked with an asterisk (*) are mandatory and must be included in the input model.
Headers
Authorization*
String
JSON Web Token used for security purposes
X-SourceSystem*
String
To identify the consumer or the Source System
X-MediaGroupCode*
String
Media Group Code of the Tenant
X-ClientCode*
String
Client Code of the Tenant
X-PaperCode*
String
Paper Code of the Tenant
Request Body
SubscriptionId*
Integer
Unique identifier of the Subscription in Naviga System
PaymentMethodId*
Integer
Unique identifier of the payment method in Naviga System
TipAmount*
Decimal
Tip amount
ProcessingFeeAmount
Decimal
The Fee amount being paid. Applicable for NCS clients.
ProcessingFeeTaxAmount
Decimal
The Fee tax amount being paid. Applicable for NCS clients.
IsTipAutoRenew*
Boolean
Indicates whether the Tip amount should be auto-renewed.
TotalAmount*
Decimal
Total amount being paid (TipAmount + ProcessingFeeAmount + ProcessingFeeTaxAmount)
{
"Code": 200,
"Errors": [],
"Result": {
"EventId": 0
},
"SessionId": "string",
"RequestId": "string"
}{
"Code":400,
"Errors":[
{
"Message":"Invalid Input.",
"Code":"Payments_01",
"Type":{
"Id":0,
"Code":"Validation"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"The Total Amount is invalid.",
"Code":"Payments_29",
"Type":{
"Id":0,
"Code":"Validation"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"Error getting newspaper configuration settings",
"Code":"Payments_18",
"Type":{
"Id":2,
"Code":"Processing"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"Subscription not found.",
"Code":"Payments_03",
"Type":{
"Id":2,
"Code":"Processing"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"SubscriberData not found.",
"Code":"Payments_04",
"Type":{
"Id":2,
"Code":"Processing"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"Payment Method not found.",
"Code":"Payments_05",
"Type":{
"Id":2,
"Code":"Processing"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"Payment Method Type is not allowed.",
"Code":"Payments_06",
"Type":{
"Id":1,
"Code":"NotProcessingAllowed"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"COMP subscription are not allowed to make payments",
"Code":"Payments_27",
"Type":{
"Id":0,
"Code":"Validation"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"The currency is empty in subscription.",
"Code":"Payments_23",
"Type":{
"Id":0,
"Code":"Validation"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"Invalid subscription status",
"Code":"Payments_19",
"Type":{
"Id":1,
"Code":"NotProcessingAllowed"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"The subscription already made a payment over the last 24 hours",
"Code":"Payments_13",
"Type":{
"Id":1,
"Code":"NotProcessingAllowed"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"Failed to create Payment event.",
"Code":"Payments_02",
"Type":{
"Id":1,
"Code":"Processing"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"Failed when Processing Circ System.",
"Code":"Payments_10",
"Type":{
"Id":2,
"Code":"Processing"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"Update Subscription Data failed.",
"Code":"Payments_20",
"Type":{
"Id":2,
"Code":"Processing"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"Update Subscription Payment Method Id failed.",
"Code":"Payments_21",
"Type":{
"Id":2,
"Code":"Processing"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"The amount of retries to validate your payment session reached the maximum allowed",
"Code":"Payments_26",
"Type":{
"Id":1,
"Code":"NotProcessingAllowed"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"The surcharge amounts only apply for Credit Card payment methods",
"Code":"Payments_16",
"Type":{
"Id":0,
"Code":"Validation"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"error": "X-SourceSystem is missing."
}{
"error": "Something went wrong. Please try again later."
}{
"Code":400,
"Errors":[
{
"Message":"The payment method was already modified over the last 24 hours.",
"Code":"Payments_32",
"Type":{
"Id":1,
"Code":"NotProcessingAllowed"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"To set up an auto renew tip the subscription has to be on EzPay.",
"Code":"Payments_31",
"Type":{
"Id":1,
"Code":"NotProcessingAllowed"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"The tip amount exceeds the maximum allowed.",
"Code":"Payments_17",
"Type":{
"Id":0,
"Code":"Validation"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"Capture funds has failed.",
"Code":"Payments_11",
"Type":{
"Id":0,
"Code":"Validation"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}{
"Code":400,
"Errors":[
{
"Message":"Update transaction failed.",
"Code":"Payments_12",
"Type":{
"Id":2,
"Code":"Processing"
},
"ErrorSource":null
}
],
"Result":null,
"SessionId":"string",
"RequestId":"string"
}Last updated