For Developers

Embedded Solution

Transaction Flow

Our Full API Solution will allow you to fully control the transaction flow starting from shopper data insertion in your own checkout page, followed by credit card details insertion window, and completing by reviewing the installment plan and a final approval.

Illustration (the UI flow may vary depending on merchant’s checkout):

Implementation

Before starting the Full API implementation, make sure to read our API Documentation Introduction and continue with the following workflow:

  1. Login
    First, in order to connect to our services, you will need to authenticate yourself and get a SessionId.

Request:

{
    "UserName": "{{UserName}}",
    "Password": "{{Password}}"
}

Response (partial response displayed):

{
    "ResponseHeader": {
        "Succeeded": true,
        "Errors": null
    },
    "SessionId": "d76829c1-1234-5678-9012-8b2f63c7aadb"
}
  1. Initiate new installment plan
    When shopper selects Splitit, you should call Initiate service with the SessionId and order details (amount, shopper information, billing address) required to initiate the plan.
    The service response will include 2 urls: InstallmentPlanInfoUrl and TermsAndConditionUrl for redirecting the shopper to a personal payment schedule page and to the Terms & Conditions page (accordingly). A further detailed explanation is described below.

Request:

{
  "RequestHeader": {
    "SessionId": "{{SessionId}}",
    "ApiKey": "{{ApiKey}}"
  },
  "PlanData": {
    "Amount": {"Value": 50,"CurrencyCode": "USD"},
    "NumberOfInstallments": 3,    
    "RefOrderNumber": "012AB",
    "AutoCapture": true
  },
  "BillingAddress": {
    "AddressLine": "260 Madison Avenue.",
    "AddressLine2": "Appartment 1",
    "City": "New York",
    "State": "NY",
    "Country": "USA",
    "Zip": "10016"
  },
  "ConsumerData": {
    "FullName": "John Smith",
    "Email": "JohnS@splitit.com",
    "PhoneNumber": "1-844-775-4848",
    "CultureName": "en-us"
  }
}

Response (partial response displayed):

{    
    "ResponseHeader": {
        "Succeeded": false,
        "Errors": []
    },
	"TermsAndConditionsUrl": "https://www.splitit.com/legal/customers-terms-and-conditions/",
	"InstallmentPlanInfoUrl": "https://admin1-sandbox.splitit.com/en-US/InstallmentPlan/ShowAgreement/?PublicToken=bc06044a-f25d-41a1-adef-6a6d1c60340c",
    "PublicToken": "2b5e8a83-1234-abcd-1ab2-e60d44b35415",
}

 

  1. Display links to shopper
    1. Installment Plan information link (payment schedule and important notes):
      You are required to allow the shopper to review their payment schedule and Splitit important notes. The previously described Initiate service includes a response parameter InstallmentPlanInfoUrl which links to the required Splitit page.
      Please Note:

      • In case the shopper changes the number of installments on your checkout, please send the new number of installments as an additional parameter to that Url, as follows:  {InstallmentPlanInfoUrl}&NumberOfInstallments={NewNumberOfInstallments}
      • (Optional) For best user experience, instead of redirecting the shopper from your checkout to Splitit’s Plan Information page, you can simply display it with your own preferred style on your page by generating it from a returned Json object response. This can be achieved by calling the Url with an additional parameter as follows:{InstallmentPlanInfoUrl}&format=json. It will return a Json response data from which your own page can be generated.
    2. Terms and Conditions link :
      You are required to show a checkbox followed by a text stating that the shopper agrees to Splitit’s Terms and Conditions. You also need to allow the shopper to review the Splitit’s Terms and Conditions page by linking to the TermsAndConditionUrl parameter (received from the previously described Initiate service).

  2. Final Approval and Creation of the Installment Plan
    When shopper clicks “Pay now” (or similar button on your site), you should send Splitit the Create request with the generated Installment Plan Number (returned from the previous Initiate service), credit card details, your system’s order number and new number of installments (optionally, in case shopper changed it after plan was initiated).

Request:

{
   "RequestHeader": {
   "SessionId": "{{SessionId}}"
   },
   "InstallmentPlanNumber": "1234567890987654321",
   "PlanData": {
		"NumberOfInstallment": 3
	},
   "CreditCardDetails": { 
      "CardCvv": "123", 
      "CardHolderFullName": "John Smith",
      "CardNumber": "4111111111111111", 
      "CardExpYear": "2019", 
      "CardExpMonth": "8"
   }  ,
   "PlanApprovalEvidence": {
      "AreTermsAndConditionsApproved": "True"
   }
}

Response (partial response displayed):

{
    "ApprovalUrl": "",
    "ResponseHeader": {
        "Succeeded": true,
        "Errors": []
    },
    "InstallmentPlan": {
        "InstallmentPlanNumber": "1234567890987654321",
        "InstallmentPlanStatus": {
            "Id": 3,
            "Code": "InProgress",
            "Description": "In Progress"
        }
	}
}

You are done!
The plan has been created and the process is now in progress.


For more options and plan management activities, please refer to our API SDK