Merchant Webhooks
Each installment plan event has a corresponding webhook event provided by Splitit. When you subscribe to an event, an asynchronous call is made to your predefined endpoint from the Splitit servers. This call will be fired to your endpoint every hour, for 24 hours, until you reply with HTTP code 200.
CreateSucceeded
The only event that you can subscribe to directly by API is CreateSucceeded
, which notifies you that a call to the Create API finished positively, i.e. payment went through (this could be either just an authorization or an authorization and a capture). CreateSucceeded
is useful in cases when a payment has succeeded on Splitit's end but for some reason your application fails to redirect to your success page in response. Thus it isn't clear to you whether the operation was successful. The CreateSucceeded
webhook will notify you that payment was successful, allowing you to finalize the order on your end.
The URL you provide will be concatenated with the unique installment plan number parameter and the order number sent originally in the Initiate
request. For example: [CreateSucceededURL]?RefOrderNumber=123456&InstallmentPlanNumber=111222333444555
. This URL will be called each hour for 24 hours until an HTTP response of 200 is returned from the caller.
To subscribe to CreateSucceeded
, include the following within the EventsEndpoints
object when you call Initiate.
"EventsEndpoints": {
"CreateSucceeded": "the URL to call"
}
Other Events with Webhooks (configurable by Splitit support)
Events Table
Event | Description |
---|---|
ChargeSucceeded/ChargeFailed | scheduled monthly charge succeeded/failed |
RefundCompleted | a successful refund was processed |
FullCaptureSucceeded, FullCaptureFailed | full installment plan capture succeeded/failed |
PlanCreatedSucceeded | plan creation (and authorization) succeeded |
PlanApprovedSucceeded, PlanApprovedFailed | plan approval by shopper succeeded/failed |
PlanCancelledSucceeded, PlanCancelledFailed | plan cancellation succeeded/failed |
StartInstallmentsSucceeded, StartInstallmentsFailed | first installment succeeded/failed |
CustomerCreditCardUpdateSucceeded, CustomerCreditCardUpdateFailed | card update succeeded/failed |
PlanCleared | plan outstanding amount = 0 |
PlanDelayed | plan entered delay for whatever reason |
PlanRecovered | plan recovered after delay |
PlanUpdatedSucceeded, PlanUpdatedFailed | plan update succeeded/failed |
CustomerDetailsUpdateSucceeded, CustomerDetailsUpdateFailed | customer details update succeeded/failed |
PlanSecuredAuthReminderShouldBeSent | plan secured, send auth reminder |
RetrySucceeded | successful retry |
RetryFailed | failed retry |
PlanDeleted | plan successfully deleted |
SecureAuthSucceeded | successful secure auth |
SecureAuthFailed | failed secure auth |
MerchantFinanced | money is transferred to the merchant in a funded model |
DisputeReceived | sent upon dispute received notification from gateway |
DisputeLost | dispute lost notification |
DisputeWon | dispute won notification |
Signature Validation for Added Security
All outgoing webhooks have an idempotency key in their headers, "X-Splitit-IdempotencyKey," along with a signature, "X-Splitit-Signature." The signature is calculated by concatenating the idempotency key, a semicolon and the body of the webhook in the form KEY;BODY.
You can validate the signature with Python:
Signature Validation with Python
First add your requirements.txt:
certifi==2024.2.2
cffi==1.16.0
charset-normalizer==3.3.2
cryptography==42.0.7
idna==3.7
pip==22.0.4
pycparser==2.22
requests==2.31.0
setuptools==58.1.0
urllib3==2.2.1
Then use the following script:
import requests
from cryptography.hazmat.primitives import serialization
from cryptography.hazmat.primitives.asymmetric import padding
from cryptography.hazmat.primitives import hashes
from base64 import b64decode
# Fetch the public key - this is from BETA server (production contains different key)
public_key_url = "https://webhooks-v2.beta.splitit.com/api/v1.0/auth/public-keys"
public_key_response = requests.get(public_key_url)
public_key_data = public_key_response.json()
public_key_pem = (
"-----BEGIN PUBLIC KEY-----\n" +
public_key_data[0]['Pcks1PublicKey'] +
"\n-----END PUBLIC KEY-----"
)
public_key = serialization.load_pem_public_key(
public_key_pem.encode(),
backend=None
)
# Fetch the data and signature to validate (from BETA server - different key is in production environment)
demo_signature_url = "https://webhooks-v2.beta.splitit.com/api/v1.0/auth/demo-signature"
demo_signature_response = requests.get(demo_signature_url)
idempotency_key = demo_signature_response.headers['x-splitit-idempotencykey']
signature = demo_signature_response.headers['x-splitit-signature']
request_body = demo_signature_response.text
data_to_verify = idempotency_key + ';' + request_body
try:
isOk = public_key.verify(
b64decode(signature),
data_to_verify.encode(),
padding.PSS(
mgf=padding.MGF1(hashes.SHA256()),
salt_length=padding.PSS.MAX_LENGTH
),
hashes.SHA256()
)
verification_result = "Signature is valid."
except Exception as e:
verification_result = f"Signature verification failed: {str(e)}"
print(verification_result)
Example Webhook Responses
PlanCreatedSucceeded
{
"InstallmentPlanEventType": "PlanCreatedSucceeded",
"InstallmentPlan": {
"InstallmentPlanNumber": "xxxxxxxxxxxxxxxxxxxx",
"InstallmentPlanStatus": {
"Id": 3,
"Code": "InProgress",
"Description": "In Progress"
},
"Amount": {
"Value": 235.3,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"OutstandingAmount": {
"Value": 156.87,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"NumberOfInstallments": 3,
"NumberOfProcessedInstallments": 1,
"OriginalAmount": {
"Value": 235.3,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"RefundAmount": {
"Value": 0,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"Consumer": {
"Id": "0",
"UserName": "jghhncc",
"FullName": "John Smith",
"Email": "jghhncc@splitit.com",
"PhoneNumber": "+972-546620588",
"CultureName": "en-US",
"RoleName": null,
"IsLocked": false,
"IsDataRestricted": false
},
"ActiveCard": {
"CardId": null,
"CardNumber": "**** **** **** 1114",
"CardExpMonth": "9",
"CardExpYear": "2019",
"CardBrand": {
"Id": 2,
"Code": "Visa",
"Description": "VISA"
},
"CardType": {
"Id": 1,
"Code": "Credit",
"Description": "CREDIT"
},
"Bin": "411111",
"CardHolderFullName": "John Smith",
"CardCvv": "[Filtered]",
"Address": {
"AddressLine": "street 1",
"AddressLine2": "Appartment 1",
"City": "TUCSON",
"Country": "US",
"State": "NY",
"Zip": "22222"
},
"Token": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
},
"Terminal": {
"Id": xxxxx,
"Code": "WebApiTestChargeAfterTerminal",
"Description": "WebApiTestTerminal"
},
"Merchant": {
"Id": xxxxx,
"Code": "webapitest",
"Description": "WebApiTest"
},
"RefOrderNumber": "xxxxx",
"PurchaseMethod": {
"Id": 3,
"Code": "ECommerce",
"Description": "E-Commerce"
},
"Strategy": {
"Id": 1,
"Code": "SecuredPlan",
"Description": "Secured"
},
"DelayResolution": null,
"ExtendedParams": {
"AnyParameterKey1": "AnyParameterVal1",
"AnyParameterKey2": "AnyParameterVal2"
},
"IsFullCaptured": false,
"IsChargedBack": false,
"ArePaymentsOnHold": false,
"ScpFundingPercent": 0,
"TestMode": "None",
"CreationDateTime": "2021-08-21T05:09:09.3181228+00:00",
"Installments": [
{
"InstallmentNumber": 1,
"Amount": {
"Value": 78.43,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"OriginalAmount": {
"Value": 78.43,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"RefundAmount": {
"Value": 0,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"ProcessDateTime": "2021-08-21T05:09:15.1681603Z",
"IsRefund": false,
"RequiredCredit": {
"Value": 235.3,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"CreatedDateTime": "2021-08-21T05:09:12.3913425Z",
"Status": {
"Id": 3,
"Code": "Finished",
"Description": "Finished"
},
"TransactionResults": [
{
"GatewayTransactionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"GatewayResultCode": "1",
"GatewayResultMessage": "Capture Succeeded",
"OperationType": {
"Id": 2,
"Code": "Capture",
"Description": "Captured"
},
"GatewayResult": true,
"GatewayTransactionDate": "2018-08-21T05:09:15.12136+00:00"
},
{
"GatewayTransactionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"GatewayResultCode": "1",
"GatewayResultMessage": "Authorize Succeeded",
"OperationType": {
"Id": 1,
"Code": "Authorize",
"Description": "Approved"
},
"GatewayResult": true,
"GatewayTransactionDate": "2018-08-21T05:09:13.7797514+00:00"
}
],
"CardDetails": {
"CardId": null,
"CardNumber": "**** **** **** 1114",
"CardExpMonth": "9",
"CardExpYear": "2019",
"CardBrand": {
"Id": 2,
"Code": "Visa",
"Description": "VISA"
},
"CardType": {
"Id": 1,
"Code": "Credit",
"Description": "CREDIT"
},
"Bin": "411111",
"CardHolderFullName": "John Smith",
"CardCvv": "[Filtered]",
"Address": {
"AddressLine": "street 1",
"AddressLine2": "Appartment 1",
"City": "TUCSON",
"Country": "US",
"State": "NY",
"Zip": "22222"
},
"Token": null
},
"Result": true
},
{
"InstallmentNumber": 2,
"Amount": {
"Value": 78.43,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"OriginalAmount": {
"Value": 78.43,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"RefundAmount": {
"Value": 0,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"ProcessDateTime": "2018-09-21T05:09:14.6221568Z",
"IsRefund": false,
"RequiredCredit": {
"Value": 156.87,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"CreatedDateTime": "2018-08-21T05:09:12.3913425Z",
"Status": {
"Id": 2,
"Code": "WaitingForProcessDate",
"Description": "Waiting for process date"
},
"TransactionResults": [],
"CardDetails": null,
"Result": null
},
{
"InstallmentNumber": 3,
"Amount": {
"Value": 78.44,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"OriginalAmount": {
"Value": 78.44,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"RefundAmount": {
"Value": 0,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"ProcessDateTime": "2018-10-21T05:09:14.6221568Z",
"IsRefund": false,
"RequiredCredit": {
"Value": 78.44,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"CreatedDateTime": "2018-08-21T05:09:12.3913425Z",
"Status": {
"Id": 2,
"Code": "WaitingForProcessDate",
"Description": "Waiting for process date"
},
"TransactionResults": [],
"CardDetails": null,
"Result": null
}
],
"SecureAuthorizations": [
{
"ProcessingDate": "2018-08-21T05:09:13.2649481+00:00",
"Amount": {
"Value": 156.87,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"TransactionResults": [
{
"GatewayTransactionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"GatewayResultCode": "1",
"GatewayResultMessage": "Authorize Succeeded",
"OperationType": {
"Id": 1,
"Code": "Authorize",
"Description": "Approved"
},
"GatewayResult": true,
"GatewayTransactionDate": "2018-08-21T05:09:13.2025477+00:00"
}
],
"CardDetails": {
"CardId": null,
"CardNumber": "**** **** **** 1114",
"CardExpMonth": "9",
"CardExpYear": "2019",
"CardBrand": {
"Id": 2,
"Code": "Visa",
"Description": "VISA"
},
"CardType": {
"Id": 1,
"Code": "Credit",
"Description": "CREDIT"
},
"Bin": "411111",
"CardHolderFullName": "John Smith",
"CardCvv": "[Filtered]",
"Address": {
"AddressLine": "street 1",
"AddressLine2": "Appartment 1",
"City": "TUCSON",
"Country": "US",
"State": "NY",
"Zip": "22222"
},
"Token": null
},
"Result": true
}
]
}
}
MerchantFinanced
AmountForFunding
= the final amount the merchant will eventually receive
OriginalPlanAmount
= the amount of the original plan
MerchantFinancedDate
= the date when the transfer occurred (not the date when the money arrives at the merchant's bank, as it generally takes a few days)
{
"InstallmentPlanEventType": "MerchantFinanced",
"InstallmentPlan": {
"InstallmentPlanNumber": "xxxxxxxxxx",
"AmountForFunding": xxx,
"AmountForFundingCurrency": "USD",
"OriginalPlanAmount": xxxx,
"OriginalPlanAmountCurrency": "USD",
"MerchantFinancedDate": "xxxx-xx-13T10:26:13.073"
}
}
FullCaptureFailed
{
"InstallmentPlanEventType": "FullCaptureFailed",
"InstallmentPlan": {
"InstallmentPlanNumber": "44224570084650485584",
"InstallmentPlanStatus": {
"Id": 6,
"Code": "Cleared",
"Description": "Cleared"
},
"Amount": {
"Value": 121,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"OutstandingAmount": {
"Value": 0,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"NumberOfInstallments": 2,
"NumberOfProcessedInstallments": 2,
"OriginalAmount": {
"Value": 121,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"RefundAmount": {
"Value": 0,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"Consumer": {
"Id": "87eba066-fab5-4f9d-bf1e-0afba4a5f2e1",
"UniqueId": "87eba066-fab5-4f9d-bf1e-0afba4a5f2e1",
"UserName": "184858bc_JohnS@splitit.com",
"FullName": "John Smith",
"Email": "JohnS@splitit.com",
"PhoneNumber": "2342342342",
"CultureName": "en-US",
"RoleName": null,
"IsLocked": false,
"IsDataRestricted": false,
"IsDataPrivateRestricted": false
},
"ActiveCard": {
"CardId": "SMYwb/LMMbb782wYWyfck8DFcO8u29KCbjWkEy4BEOPGX+2c9688y/+v0DTpSAQntptWF+P81OUNJhKV7d3LHA==",
"CardNumber": "************1111",
"CardExpMonth": "12",
"CardExpYear": "2030",
"CardBrand": {
"Id": 2,
"Code": "Visa",
"Description": "VISA"
},
"CardType": {
"Id": 1,
"Code": "Credit",
"Description": "CREDIT"
},
"Bin": "411111",
"CardHolderFullName": "John Smith",
"CardCvv": "[Filtered]",
"Address": {
"AddressLine": "Error MYCUSTOMERROR filter Authorization FirstInstallmentFinished",
"AddressLine2": "Apartment 1",
"City": "New York",
"Country": "US",
"State": "NY",
"Zip": "10016",
"FullAddressLine": "Error MYCUSTOMERROR filter Authorization FirstInstallmentFinished,Apartment 1,New York,NY,US"
},
"Token": "a7381782-2aba-4829-b475-29442e2d7b1c"
},
"FraudCheck": null,
"Terminal": {
"Id": 31817,
"Code": null,
"Description": "Splitit Tech Writer"
},
"Merchant": {
"Name": "Splitit Tech Writer_1",
"Id": 31658,
"Code": "splitittechwriter1",
"Description": "Splitit Tech Writer_1"
},
"RefOrderNumber": "xxxxxx",
"PurchaseMethod": {
"Id": 3,
"Code": "ECommerce",
"Description": "E-Commerce"
},
"Strategy": {
"Id": 1,
"Code": "SecuredPlan",
"Description": "Secured"
},
"DelayResolution": null,
"ExtendedParams": {
"AnyParameterKey1": "AnyParameterVal1",
"AnyParameterKey2": "AnyParameterVal2",
"acceptHeader": "text/html,application/xhtml+xml,application/xml;q",
"colorDepth": "24",
"javaEnabled": "false",
"javascriptEnabled": "true",
"language": "en-US",
"screenHeight": "1080",
"screenWidth": "1920",
"timeZoneOffset": "240",
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36",
"challengeWindowSize": "Small",
"browser_size": "01",
"forterToken": "da5514225d994c548cc6f957d672df56_1665163691592__UDF4_9ck"
},
"IsFullCaptured": true,
"IsChargedBack": false,
"ArePaymentsOnHold": false,
"ScpFundingPercent": 0,
"FundingStatus": "Monthly",
"TestMode": "None",
"CreationDateTime": "2022-10-07T17:27:30.28",
"LifeTimeUrlExpirationTime": "2022-10-14T17:27:30.28",
"Installments": [
{
"InstallmentNumber": 1,
"Amount": {
"Value": 60.5,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"OriginalAmount": {
"Value": 60.5,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"RefundAmount": {
"Value": 0,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"ProcessDateTime": "2022-10-07T17:28:30.25",
"IsRefund": false,
"RequiredCredit": {
"Value": 181.5,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"CreatedDateTime": "2022-10-07T17:28:10.537",
"Status": {
"Id": 3,
"Code": "Finished",
"Description": "Finished"
},
"TransactionResults": [
{
"GatewayTransactionId": "b4ebf438-da3f-4bed-846f-f13f5f30a4f7",
"SplititTransactionId": 0,
"SplititGatewayTransactionId": "9d2b4022-ff69-403e-a21c-0336498682f0",
"GatewayResultCode": "1",
"GatewayResultMessage": "Capture Succeeded",
"OperationType": {
"Id": 2,
"Code": "Capture",
"Description": "Captured"
},
"GatewayResult": true,
"GatewayTransactionDate": "2022-10-07T17:28:30.213Z",
"IsChargeback": false,
"AVSResult": null,
"CVCResult": null
},
{
"GatewayTransactionId": "b4ebf438-da3f-4bed-846f-f13f5f30a4f7",
"SplititTransactionId": 0,
"SplititGatewayTransactionId": "45be65bb-12a3-4b76-ba53-fc4d287f9747",
"GatewayResultCode": "1",
"GatewayResultMessage": "Authorize Succeeded",
"OperationType": {
"Id": 1,
"Code": "Authorize",
"Description": "Approved"
},
"GatewayResult": true,
"GatewayTransactionDate": "2022-10-07T17:28:29.875Z",
"IsChargeback": false,
"AVSResult": null,
"CVCResult": null
}
],
"CardDetails": {
"CardId": "SMYwb/LMMbb782wYWyfck8DFcO8u29KCbjWkEy4BEOPGX+2c9688y/+v0DTpSAQntptWF+P81OUNJhKV7d3LHA==",
"CardNumber": "************1111",
"CardExpMonth": "12",
"CardExpYear": "2030",
"CardBrand": {
"Id": 2,
"Code": "Visa",
"Description": "VISA"
},
"CardType": {
"Id": 1,
"Code": "Credit",
"Description": "CREDIT"
},
"Bin": "411111",
"CardHolderFullName": "John Smith",
"CardCvv": "[Filtered]",
"Address": {
"AddressLine": "Error MYCUSTOMERROR filter Authorization FirstInstallmentFinished",
"AddressLine2": "Apartment 1",
"City": "New York",
"Country": "US",
"State": "NY",
"Zip": "10016",
"FullAddressLine": "Error MYCUSTOMERROR filter Authorization FirstInstallmentFinished,Apartment 1,New York,NY,US"
},
"Token": null
},
"Result": true,
"PaymentMethod": "CreditCard"
},
{
"InstallmentNumber": 2,
"Amount": {
"Value": 60.5,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"OriginalAmount": {
"Value": 60.5,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"RefundAmount": {
"Value": 0,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"ProcessDateTime": "2022-11-07T17:28:39.96",
"IsRefund": false,
"RequiredCredit": {
"Value": 121,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"CreatedDateTime": "2022-10-07T17:28:10.537",
"Status": {
"Id": 4,
"Code": "Deleted",
"Description": "Deleted"
},
"TransactionResults": [],
"CardDetails": null,
"Result": null,
"PaymentMethod": "0"
},
{
"InstallmentNumber": 3,
"Amount": {
"Value": 60.5,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"OriginalAmount": {
"Value": 60.5,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"RefundAmount": {
"Value": 0,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"ProcessDateTime": "2022-10-07T17:29:35.473",
"IsRefund": false,
"RequiredCredit": {
"Value": 60.5,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"CreatedDateTime": "2022-10-07T17:29:35.12",
"Status": {
"Id": 3,
"Code": "Finished",
"Description": "Finished"
},
"TransactionResults": [
{
"GatewayTransactionId": "e323363a-2ba7-46da-a6fd-0ac80a915b10",
"SplititTransactionId": 0,
"SplititGatewayTransactionId": "9f26bdac-13a8-4828-8dd2-15972fa1ed55",
"GatewayResultCode": "1",
"GatewayResultMessage": "Capture Succeeded",
"OperationType": {
"Id": 2,
"Code": "Capture",
"Description": "Captured"
},
"GatewayResult": true,
"GatewayTransactionDate": "2022-10-07T17:29:35.44Z",
"IsChargeback": false,
"AVSResult": null,
"CVCResult": null
},
{
"GatewayTransactionId": "e323363a-2ba7-46da-a6fd-0ac80a915b10",
"SplititTransactionId": 0,
"SplititGatewayTransactionId": "1ed3bd5e-dea2-4efb-ae0a-c81f10e0294f",
"GatewayResultCode": "1",
"GatewayResultMessage": "Authorize Succeeded",
"OperationType": {
"Id": 1,
"Code": "Authorize",
"Description": "Approved"
},
"GatewayResult": true,
"GatewayTransactionDate": "2022-10-07T17:28:29.667Z",
"IsChargeback": false,
"AVSResult": null,
"CVCResult": null
}
],
"CardDetails": {
"CardId": "SMYwb/LMMbb782wYWyfck8DFcO8u29KCbjWkEy4BEOPGX+2c9688y/+v0DTpSAQntptWF+P81OUNJhKV7d3LHA==",
"CardNumber": "************1111",
"CardExpMonth": "12",
"CardExpYear": "2030",
"CardBrand": {
"Id": 2,
"Code": "Visa",
"Description": "VISA"
},
"CardType": {
"Id": 1,
"Code": "Credit",
"Description": "CREDIT"
},
"Bin": "411111",
"CardHolderFullName": "John Smith",
"CardCvv": "[Filtered]",
"Address": {
"AddressLine": "Error MYCUSTOMERROR filter Authorization FirstInstallmentFinished",
"AddressLine2": "Apartment 1",
"City": "New York",
"Country": "US",
"State": "NY",
"Zip": "10016",
"FullAddressLine": "Error MYCUSTOMERROR filter Authorization FirstInstallmentFinished,Apartment 1,New York,NY,US"
},
"Token": null
},
"Result": true,
"PaymentMethod": "CreditCard"
}
],
"SecureAuthorizations": [
{
"ProcessingDate": "2022-10-07T17:28:29.697",
"Amount": {
"Value": 60.5,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"TransactionResults": [
{
"GatewayTransactionId": "e323363a-2ba7-46da-a6fd-0ac80a915b10",
"SplititTransactionId": 0,
"SplititGatewayTransactionId": null,
"GatewayResultCode": "1",
"GatewayResultMessage": "Authorize Succeeded",
"OperationType": {
"Id": 1,
"Code": "Authorize",
"Description": "Approved"
},
"GatewayResult": true,
"GatewayTransactionDate": "2022-10-07T17:28:29.667Z",
"IsChargeback": false,
"AVSResult": null,
"CVCResult": null
}
],
"CardDetails": {
"CardId": "SMYwb/LMMbb782wYWyfck8DFcO8u29KCbjWkEy4BEOPGX+2c9688y/+v0DTpSAQntptWF+P81OUNJhKV7d3LHA==",
"CardNumber": "************1111",
"CardExpMonth": "12",
"CardExpYear": "2030",
"CardBrand": {
"Id": 2,
"Code": "Visa",
"Description": "VISA"
},
"CardType": {
"Id": 1,
"Code": "Credit",
"Description": "CREDIT"
},
"Bin": "411111",
"CardHolderFullName": "John Smith",
"CardCvv": "[Filtered]",
"Address": {
"AddressLine": "Error MYCUSTOMERROR filter Authorization FirstInstallmentFinished",
"AddressLine2": "Apartment 1",
"City": "New York",
"Country": "US",
"State": "NY",
"Zip": "10016",
"FullAddressLine": "Error MYCUSTOMERROR filter Authorization FirstInstallmentFinished,Apartment 1,New York,NY,US"
},
"Token": null
},
"Result": true
}
],
"LogoUrl": null,
"IsInAutoRetry": false,
"PaymentMethod": "CreditCard",
"AllowCardUpdateOnSplititPortals": true,
"OnHoldLastOpenDate": null,
"OnHoldLastOpenUserId": null
}
}
RefundCompleted
{
"InstallmentPlanEventType":"RefundCompleted",
"RefundIdGuid":"7c415b13-b16d-486b-ac75-aeb7f852ad8e",
"RefundId":"7c415b13-b16d-486b-ac75-aeb7f852ad8e",
"IdempotencyKey":"7c412b12-b16d-486b-ac75-aeb7f852ad8e",
"InstallmentPlanNumber":"00G1ONI0HJELMU4S9U37",
"CurrencyCode":"USD",
"CreatedOn":"2024-03-21T14:10:52.5657411Z",
"RefundDetails": {
"DeductedFromOutstandingAmount": {
"Currency": {
"Code": "USD",
"Description": "US Dollar",
"Symbol": "US$"
},
"Value": 60.00,
"NonChargedAmountLst": [
20.00,
20.00,
20.00
]
},
"CreditToShopper": []
},
"RefundSummary": {
"TotalAmount": 60.00,
"FailedAmount": 0.0,
"SucceedAmount": 60.00,
"PendingAmount": 0.0
},
"ReferenceId": "abcTestId"
}
FullCaptureSucceeded
{
"InstallmentPlanEventType": "FullCaptureSucceeded",
"InstallmentPlan": {
"InstallmentPlanNumber": "62111114657217017628",
"InstallmentPlanStatus": {
"Id": 6,
"Code": "Cleared",
"Description": "Cleared"
},
"Amount": {
"Value": 73,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"OutstandingAmount": {
"Value": 0,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"NumberOfInstallments": 2,
"NumberOfProcessedInstallments": 2,
"OriginalAmount": {
"Value": 98,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"RefundAmount": {
"Value": 0,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"Consumer": {
"Id": "5604f696-96d3-429f-8a47-514237126a08",
"UniqueId": "5604f696-96d3-429f-8a47-514237126a08",
"UserName": "9a65fe04_ebs99@gmail.com",
"FullName": "Joe Test",
"Email": "eb2s99@gmail.com",
"PhoneNumber": "+11112493865",
"CultureName": "en-US",
"RoleName": null,
"IsLocked": false,
"IsDataRestricted": false,
"IsDataPrivateRestricted": false
},
"ActiveCard": {
"CardId": "BxZo29NwhiUNrXZMl7k57I+tATPOoOcI7q3nGRvHypcrp/jH6omuiz5+pnUBXwJ26QYPQuDGmHcC0jLCI2j7zA==",
"CardNumber": "**** **** **** 1111",
"CardExpMonth": "11",
"CardExpYear": "2029",
"CardBrand": {
"Id": 2,
"Code": "Visa",
"Description": "VISA"
},
"CardType": {
"Id": 1,
"Code": "Credit",
"Description": "CREDIT"
},
"Bin": "411111",
"CardHolderFullName": "Joe Test",
"CardCvv": "[Filtered]",
"Address": {
"AddressLine": null,
"AddressLine2": "",
"City": "Bethlehem",
"Country": "US",
"State": "PA",
"Zip": null,
"FullAddressLine": ",Bethlehem,PA,US"
},
"Token": "3eb2424e-931a-4ab5-8330-6e4f2ad78f0f"
},
"FraudCheck": {
"FraudCheckResult": {
"Id": 3,
"Code": "NotReviewed",
"Description": "Not Reviewed"
},
"ProviderResultCode": "DecisionByPolicy",
"ProviderResultDesc": "not reviewed",
"ProviderReferenceId": "62788064657217017628"
},
"Terminal": {
"Id": 31817,
"Code": null,
"Description": "Splitit Tech Writer"
},
"Merchant": {
"Name": "Splitit Tech Writer_1",
"Id": 31658,
"Code": "splitittechwriter1",
"Description": "Splitit Tech Writer_1"
},
"RefOrderNumber": "",
"PurchaseMethod": {
"Id": 1,
"Code": "InStore",
"Description": "In Store"
},
"Strategy": {
"Id": 1,
"Code": "SecuredPlan",
"Description": "Secured"
},
"DelayResolution": null,
"ExtendedParams": {
"acceptHeader": "text/html,application/xhtml+xml,application/xml;q",
"colorDepth": "24",
"javaEnabled": "false",
"javascriptEnabled": "true",
"language": "en-US",
"screenHeight": "1080",
"screenWidth": "1920",
"timeZoneOffset": "240",
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36",
"challengeWindowSize": "Small",
"browser_size": "01",
"forterToken": "da5521125d984c548cc6f957d672df56_1665161355025__UDF4_9ck"
},
"IsFullCaptured": true,
"IsChargedBack": false,
"ArePaymentsOnHold": false,
"ScpFundingPercent": 0,
"FundingStatus": "Monthly",
"TestMode": "None",
"CreationDateTime": "2022-10-07T16:48:52.733",
"LifeTimeUrlExpirationTime": "2022-10-14T16:48:52.733",
"Installments": [
{
"InstallmentNumber": 1,
"Amount": {
"Value": 49,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"OriginalAmount": {
"Value": 49,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"RefundAmount": {
"Value": 0,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"ProcessDateTime": "2022-10-07T16:49:52.04",
"IsRefund": false,
"RequiredCredit": {
"Value": 97,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"CreatedDateTime": "2022-10-07T16:48:52.873",
"Status": {
"Id": 3,
"Code": "Finished",
"Description": "Finished"
},
"TransactionResults": [
{
"GatewayTransactionId": "6613aea1-34b9-429d-8e1b-9ead749b8c05",
"SplititTransactionId": 0,
"SplititGatewayTransactionId": "a6ee626a-778d-4875-a42f-fc8ca05124b7",
"GatewayResultCode": "1",
"GatewayResultMessage": "Capture Succeeded",
"OperationType": {
"Id": 2,
"Code": "Capture",
"Description": "Captured"
},
"GatewayResult": true,
"GatewayTransactionDate": "2022-10-07T16:49:52Z",
"IsChargeback": false,
"AVSResult": null,
"CVCResult": null
},
{
"GatewayTransactionId": "6613aea1-34b9-429d-8e1b-9ead749b8c05",
"SplititTransactionId": 0,
"SplititGatewayTransactionId": "dd6132d7-199b-4730-a8d8-6216ab1b799a",
"GatewayResultCode": "1",
"GatewayResultMessage": "Authorize Succeeded",
"OperationType": {
"Id": 1,
"Code": "Authorize",
"Description": "Approved"
},
"GatewayResult": true,
"GatewayTransactionDate": "2022-10-07T16:49:51.657Z",
"IsChargeback": false,
"AVSResult": null,
"CVCResult": null
}
],
"CardDetails": {
"CardId": "BxZo29NwhiUNrXZMl7k57I+tATPOoOcI7q3nGRvHypcrp/jH6omuiz5+pnUBXwJ26QYPQuDGmHcC0jLCI2j7zA==",
"CardNumber": "**** **** **** 1111",
"CardExpMonth": "11",
"CardExpYear": "2029",
"CardBrand": {
"Id": 2,
"Code": "Visa",
"Description": "VISA"
},
"CardType": {
"Id": 1,
"Code": "Credit",
"Description": "CREDIT"
},
"Bin": "411111",
"CardHolderFullName": "Joe Test",
"CardCvv": "[Filtered]",
"Address": {
"AddressLine": null,
"AddressLine2": "",
"City": "Bethlehem",
"Country": "US",
"State": "PA",
"Zip": null,
"FullAddressLine": ",Bethlehem,PA,US"
},
"Token": null
},
"Result": true,
"PaymentMethod": "CreditCard"
},
{
"InstallmentNumber": 2,
"Amount": {
"Value": 24,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"OriginalAmount": {
"Value": 49,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"RefundAmount": {
"Value": 0,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"ProcessDateTime": "2022-11-07T16:50:01.727",
"IsRefund": false,
"RequiredCredit": {
"Value": 48,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"CreatedDateTime": "2022-10-07T16:48:52.873",
"Status": {
"Id": 4,
"Code": "Deleted",
"Description": "Deleted"
},
"TransactionResults": [],
"CardDetails": null,
"Result": null,
"PaymentMethod": "0"
},
{
"InstallmentNumber": 3,
"Amount": {
"Value": 24,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"OriginalAmount": {
"Value": 49,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"RefundAmount": {
"Value": 0,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"ProcessDateTime": "2022-10-07T16:58:38.723",
"IsRefund": false,
"RequiredCredit": {
"Value": 24,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"CreatedDateTime": "2022-10-07T16:58:38.427",
"Status": {
"Id": 3,
"Code": "Finished",
"Description": "Finished"
},
"TransactionResults": [
{
"GatewayTransactionId": "9b7c56d0-f652-44da-9971-49b06d30d388",
"SplititTransactionId": 0,
"SplititGatewayTransactionId": "e4a658aa-b675-49fd-af5b-a2f3f180697e",
"GatewayResultCode": "1",
"GatewayResultMessage": "Capture Succeeded",
"OperationType": {
"Id": 2,
"Code": "Capture",
"Description": "Captured"
},
"GatewayResult": true,
"GatewayTransactionDate": "2022-10-07T16:58:38.686Z",
"IsChargeback": false,
"AVSResult": null,
"CVCResult": null
},
{
"GatewayTransactionId": "9b7c56d0-f652-44da-9971-49b06d30d388",
"SplititTransactionId": 0,
"SplititGatewayTransactionId": "408ec5bc-d024-4991-bdd4-9ec5e401b45a",
"GatewayResultCode": "1",
"GatewayResultMessage": "Authorize Succeeded",
"OperationType": {
"Id": 1,
"Code": "Authorize",
"Description": "Approved"
},
"GatewayResult": true,
"GatewayTransactionDate": "2022-10-07T16:49:51.457Z",
"IsChargeback": false,
"AVSResult": null,
"CVCResult": null
}
],
"CardDetails": {
"CardId": "BxZo29NwhiUNrXZMl7k57I+tATPOoOcI7q3nGRvHypcrp/jH6omuiz5+pnUBXwJ26QYPQuDGmHcC0jLCI2j7zA==",
"CardNumber": "**** **** **** 1111",
"CardExpMonth": "11",
"CardExpYear": "2029",
"CardBrand": {
"Id": 2,
"Code": "Visa",
"Description": "VISA"
},
"CardType": {
"Id": 1,
"Code": "Credit",
"Description": "CREDIT"
},
"Bin": "411111",
"CardHolderFullName": "Joe Test",
"CardCvv": "[Filtered]",
"Address": {
"AddressLine": null,
"AddressLine2": "",
"City": "Bethlehem",
"Country": "US",
"State": "PA",
"Zip": null,
"FullAddressLine": ",Bethlehem,PA,US"
},
"Token": null
},
"Result": true,
"PaymentMethod": "CreditCard"
}
],
"SecureAuthorizations": [
{
"ProcessingDate": "2022-10-07T16:49:51.483",
"Amount": {
"Value": 49,
"Currency": {
"Symbol": "US$",
"Id": 1,
"Code": "USD",
"Description": "US Dollar"
}
},
"TransactionResults": [
{
"GatewayTransactionId": "9b7c56d0-f652-44da-9971-49b06d30d388",
"SplititTransactionId": 0,
"SplititGatewayTransactionId": null,
"GatewayResultCode": "1",
"GatewayResultMessage": "Authorize Succeeded",
"OperationType": {
"Id": 1,
"Code": "Authorize",
"Description": "Approved"
},
"GatewayResult": true,
"GatewayTransactionDate": "2022-10-07T16:49:51.457Z",
"IsChargeback": false,
"AVSResult": null,
"CVCResult": null
}
],
"CardDetails": {
"CardId": "BxZo29NwhiUNrXZMl7k57I+tATPOoOcI7q3nGRvHypcrp/jH6omuiz5+pnUBXwJ26QYPQuDGmHcC0jLCI2j7zA==",
"CardNumber": "**** **** **** 1111",
"CardExpMonth": "11",
"CardExpYear": "2029",
"CardBrand": {
"Id": 2,
"Code": "Visa",
"Description": "VISA"
},
"CardType": {
"Id": 1,
"Code": "Credit",
"Description": "CREDIT"
},
"Bin": "411111",
"CardHolderFullName": "Joe Test",
"CardCvv": "[Filtered]",
"Address": {
"AddressLine": null,
"AddressLine2": "",
"City": "Bethlehem",
"Country": "US",
"State": "PA",
"Zip": null,
"FullAddressLine": ",Bethlehem,PA,US"
},
"Token": null
},
"Result": true
}
],
"LogoUrl": null,
"IsInAutoRetry": false,
"PaymentMethod": "CreditCard",
"AllowCardUpdateOnSplititPortals": true,
"OnHoldLastOpenDate": null,
"OnHoldLastOpenUserId": null
}
}
DisputeReceived
{
"InstallmentPlanNumber": "12326416283541867056",
"DisputeStatus": "Open",
"DisputeCreatedDate": "2022-11-29T00:00:00",
"Amount": 10.46,
"Reason": "fraudulent",
"GatewayTransactionId": "pay_g37u5enwgjjezps3gixr7ni6oi",
"TraceId": "0HMMHC5TQ5H05:00000013#rr0C3wAA",
"TransactionStatus": "Captured",
"CurrencyCode": "USD",
"DisputeUntilDate": "2022-12-14T00:00:00",
"RefOrderNumber": "595167"
}
DisputeWon
{
"InstallmentPlanNumber": "38517140260048411012",
"DisputeStatus": "Won",
"DisputeCreatedDate": "2022-12-08T00:00:00",
"Amount": 10.45,
"Reason": "fraudulent",
"GatewayTransactionId": "pay_cutuip45lljeflsq5cze6mhh7y",
"TraceId": "0HMMP5HRFJJHG:00000003#WC8F7WG1kQAA",
"TransactionStatus": "Captured",
"CurrencyCode": "USD",
"DisputeUntilDate": "2022-12-23T00:00:00",
"RefOrderNumber": "611777"
}
DisputeLost
{
"InstallmentPlanNumber": "42405325665477085413",
"DisputeStatus": "Lost",
"DisputeCreatedDate": "2022-12-08T00:00:00",
"Amount": 10.46,
"Reason": "fraudulent",
"GatewayTransactionId": "pay_unjq5scmbcxefmjtd2lxttveaa",
"TraceId": "0HMMP5HRFJJHG:00000004#bi0yqxm0SzH5RlwAA",
"TransactionStatus": "Captured",
"CurrencyCode": "USD",
"DisputeUntilDate": "2022-12-23T00:00:00",
"RefOrderNumber": "144268"
}
AMS API: OnboardingInitialSetup
{
"Account": {
"AccountId": "SPL_27457290",
"AccountName": "Test Account Name",
"AccountEmail": "test@gmail.com",
"ApprovedDate": "2024-05-02T10:48:41.606Z",
"ParentId": "SPL_32212338",
"ParentName": "USD FUN 010524",
"Status": "Approved",
"Terminals": [
{
"Name": "mock2",
"Apikey": "1eceb6a6-a36e-48ff-80b5-8da468d2c4c1"
}
]
},
"Errors": null,
"StatusCode": 200,
"TraceId": "0HN3AJ7ABINQT:00000024#bvowAA",
"IsSuccess": true
}
Advanced: Parameterized Webhooks
You can request that Splitit support enable parameterized webhooks for you, which will enable you to receive certain plan parameters either directly in your webhook's querystring or in its URL. Available parameters include installment plan number, terminal id, terminal api key, and merchant id.
Querystring Parameters
Request that parameters be returned directly in your webhook's querystring. So, for example, if you request to receive installment plan number, terminal id, terminal api key, and merchant id in your querystring, the following webhook structure will be returned:
https://webhook.site/{__webhook number__}?ipn={__INSTALLMENTPLANNUMBER__}&terminalId={__TERMINALID__}&terminalapikey={__TERMINALAPIKEY__}&merchantId={__MERCHANTID__}**
e.g.:
https://webhook.site/c72da947-52c8-4809-91d1-41f0c85f35bb?ipn=004FANS65QE9LU4D9O90&terminalId=39817&terminalapikey=b127c9a4-4c22-4791-97c4-c9f8da665a60&merchantId=91157