Skip to main content

Create Installment Plan

Once you are ready to check your customer out, you can use the Create endpoint. Create enables you to pass in PCI sensitive data directly to the Splitit API, and thus requires SAQ-D PCI certification.

A successful Create operation creates an authorization on a customer's credit card, and if AutoCapture has been set to true within the request body, both authorization and capture of the first installment will be completed (if AutoCapture is set to false, you will have to call Update Plan later). If Splitit is unable to successfully secure an authorization on a credit card, an error message will be returned in the response. Note that for funded plans, a customer's BillingAddress object must be filled out. In addition, if you are completely managing the input of PCI sensitive data on your side, it’s essential to ensure your customer has approved the Splitit specific terms and conditions.

Header Parameters
X-Splitit-IdempotencyKey string
X-Splitit-TestMode string

Possible values: [None, Regular, Fast, Automation]

Request Body
AutoCapture boolean

Indicates whether to capture the first installment automatically when creating the plan, or to wait for explicit indication to do the first capture (the default is true)

Attempt3dSecure boolean

Indicates whether to run a 3D secure verification (default is false)

TermsAndConditionsAccepted boolean REQUIRED

Indicates that the shopper accepted your Terms and Conditions

Shopper object REQUIRED
FullName string
Email string REQUIRED
PhoneNumber string
Culture string
PlanData object REQUIRED
TotalAmount decimal REQUIRED

The total order amount

Currency string REQUIRED
NumberOfInstallments int32 REQUIRED

When populated will be used to display as default in Payment Form

TerminalId string REQUIRED

The merchant terminal identifier

PurchaseMethod string

Possible values: [InStore, PhoneOrder, ECommerce]

How purchase was made (default is ECommerce)

RefOrderNumber string

Reference order number for merchant's use

ExtendedParams object

Additional data that can be added as key/value pair parameters by merchant (and later can be retrieved by GET)

FirstInstallmentAmount decimal
FirstInstallmentDate date-time
BillingAddress object
AddressLine1 string
AddressLine2 string
City string
Country string

ISO 3166-3 code

State string

ISO 3166-2 code

Zip string
PaymentMethod object REQUIRED
Type

Possible values: [Card, SplititToken]

Card object REQUIRED
CardHolderFullName string
CardNumber string REQUIRED
CardExpYear string REQUIRED
CardExpMonth string REQUIRED
CardCvv string
CardBrand string

Possible values: [Mastercard, Visa, AmericanExpress, Maestro, JCB, CUP, UPI, Discover, Other]

CardType string

Possible values: [Credit, Debit, Charge, Other, Prepaid, VisaDeferredDebit, NetworkOnly]

Token string
RedirectUrls object
AuthorizeSucceeded string
Succeeded string
AuthorizeFailed string
Failed string
EventsEndpoints object
CreateSucceeded string
Responses
200

Success

Schema OPTIONAL
InstallmentPlanNumber string OPTIONAL
DateCreated date-time
RefOrderNumber string OPTIONAL
PurchaseMethod string OPTIONAL

Possible values: [InStore, PhoneOrder, ECommerce]

How purchase was made (default is ECommerce)

Status string

Possible values: [Initialized, PendingCapture, Active, Cleared, Canceled]

Currency string OPTIONAL
OriginalAmount decimal OPTIONAL
Amount decimal OPTIONAL
ExtendedParams object OPTIONAL
Authorization object OPTIONAL
Status string

Possible values: [NA, Succeeded, Pending3DS, Failed]

Date date-time OPTIONAL
SplititErrorResultCode string OPTIONAL
GatewayTransactionID string OPTIONAL
GatewayResultCode string OPTIONAL
GatewayResultMessage string OPTIONAL
ThreeDSRedirect object OPTIONAL
Url string OPTIONAL
Verb string OPTIONAL
Params object OPTIONAL
CAVV string OPTIONAL
ECI string OPTIONAL
Shopper object OPTIONAL
FullName string OPTIONAL
Email string
PhoneNumber string OPTIONAL
Culture string OPTIONAL
BillingAddress object OPTIONAL
AddressLine string OPTIONAL
AddressLine2 string OPTIONAL
City string OPTIONAL
Country string OPTIONAL

ISO 3166 Country name OR 2-character code OR 3-character code

State string OPTIONAL

ISO 3166-2 State

Zip string OPTIONAL
PaymentMethod object OPTIONAL
Type OPTIONAL

Possible values: [Card, SplititToken]

Card object
CardHolderFullName string OPTIONAL
CardNumber string
CardExpYear string
CardExpMonth string
CardCvv string OPTIONAL
CardBrand string OPTIONAL

Possible values: [Mastercard, Visa, AmericanExpress, Maestro, JCB, CUP, UPI, Discover, Other]

CardType string OPTIONAL

Possible values: [Credit, Debit, Charge, Other, Prepaid, VisaDeferredDebit, NetworkOnly]

Token string OPTIONAL
Installments object[] OPTIONAL
InstallmentNumber int32
Amount decimal
ProcessDateTime date-time OPTIONAL
Status string

Possible values: [Pending, Processed, Canceled]

Links object OPTIONAL
Checkout string OPTIONAL
LearnMore string OPTIONAL
TermsConditions string OPTIONAL
PrivacyPolicy string OPTIONAL
401

Unauthorized Request: Token is not authorized or is expired

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
403
Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
404

Resource Does Not Exist: Plan or service does not exist; for all APIs, if an invalid plan number is passed in the URL, this error will be returned

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
500

General Server Error: Server encountered an unexpected condition

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-503

InvalidInstallmentPlanStatus: Please close this window. Then click 'Splitit Payment' to create your payment plan (you haven't been charged yet).

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-504

InvalidCCCardTypeNotSupported: Sorry, but we do not accept debit cards. We can only accept Visa and MasterCard credit cards at this time.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-505

InvalidNumberOfInstallments: The number of installments is not available at this store. Please check available options and try again. Thank you!

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-510

InvalidCardholderName: The cardholder name must include at least 3 characters. Please check and try again

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-511

InvalidAmount: Invalid amount sent, such as below your minimum amount or above your maximum amount.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-520

InvalidCVV: The CVV number must include at least 3 characters. Please check and try again.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-521

InvalidCardNumber: This credit card number is not valid. Please check your card and try again.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-522

InvalidExpirationDate: The entered expiration date is not a valid date. Please check your card and try again.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-524

InvalidEmailFormat: Invalid email. Please check that the email address is entered in the correct format. (For example: name@mail.com)

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-526

InvalidZIPCode: The ZIP code must include at least 3 characters. Please check and try again.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-528

InvalidCCIssueCountryNotSupportedByTerminal: We are sorry, but we currently do not accept cards issued by this country.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-529

CurrencyNotSupported: We are sorry, but we currently do not accept this currency.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-532

CountrySubdivisionNotSupported: Sorry, but Splitit is currently not available in your state. Please contact Splitit's customer service desk for help

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-540

InvalidExpirationDateFormat: Please enter the expiration date as MM/DD/YYYY.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-542

InvalidCCCardBrandNotSupported: Sorry but we do not accept this type of credit card. Please use [[SupportedCardBrands]] to complete your purchase.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-543

ApprovePlan_NoApprovalEvidence: Evidence of customer approval not provided.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-544

PlanWithTheSamePaymentDataAlreadyBeenCreatedLately: A similar purchase has been processed with this credit card. Please contact your merchant's customer support number for more information.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-550

CultureNameNotValid: Culture (language used in interfaces and communications) not valid.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-551

CultureNotSupported: Culture (language used in interfaces and communications) not supported.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-554

UnknownZipCode: The ZIP code you entered is not valid. Please try again.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-566

AddressDataIsMissingOrPartiallyInitiated: Please enter the cardholder's complete address.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-567

CardHolderNameIsMissing: Please enter the cardholder's name.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-568

CardNumberIsMissing: Please enter the full credit card number.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-569

CardExpirationMonthIsMissing: Please enter the credit card's expiration month.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-570

CardExpirationYearIsMissing: Please insert credit card's expiration year.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-571

NumberOfInstallmentNotDefined: Please select the number of installments for this purchase.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-572

InvalidStateCode: We were unable to find this state code.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-573

EmailsMissing: Please enter your email address.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-574

ConsumerFullNameIsMissing: Please enter your full name.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-575

CurrencyMustBeDefinedOnTransaction: Please select the currency you wish to use.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-578

InvalidPlanStrategy: We are sorry for the inconvenience, but this plan is not available.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-580

InvalidCcPrepaidCardNotSupported: We do not currently accept prepaid cards, but we do accept credit cards.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-594

FraudDetected: Sorry, but we were unable to process your payment. Please reach out to our customer support team at support@splitit.com.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-595

PhoneIsMissing: Please enter your phone number.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-596

InvalidPhoneFormat: Please enter your phone number in this format: +1-321-555-1234.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-599

General Error: Sorry. There has been an error. Please try again.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-600

GtwyResultGeneralError: Gateway was unable to process this request. Please try using a different card.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-601

GtwyResultCCDataAVSZip: The ZIP code you entered is not valid. Please try again.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-602

GtwyResultCCDataAVSAddress: The address does not match. Please check your card and try again.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-603

GtwyResultCCDataCVV: The CVV number does not match. Please check your card and try again.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-606

GtwyResultCCDataAVS: Address or zip/post code failed validation. Please try again.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-607

GtwyResultCCDataNumber: This credit card number is not valid. Please check your card and try again.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-608

GtwyResultCCDataGeneralProblem: Sorry, but your card was not able to be processed. Please try a different card.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-609

GtwyResultCCDataInsufficientFunds: Sorry, but there is not enough available credit on this card to cover the full amount of your purchase. Please try a different card.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-610

GtwyResultCCWasDeclined: Sorry, but your card was not accepted. Please try a different card.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-630

GtwyConnectivityProblem: Sorry, but there was an error processing your payment. Please try again.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-640

GtwyMerchantDataProblem: Sorry, but there has been a processing error with this merchant. Please contact our support for assistance.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-641

Gtwy3DSRequired: 3D secure verification is required.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-806

TerminalApiKeyMissing: Terminal ID not found.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-1041

IdempotencyHashMismatchError: Same Idempotency key with different payload identified.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-5041

InvalidCCCardTypeNotSupportedMoreThanXInstallments: [[CardType]] cards support only up to [[MaxInstallmentsLimit]] installments. Please reduce the number of installments or provide payment details for a supported credit card.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-5042

InvalidCCCardTypeNotSupportedMoreThanXAmount: [[CardType]] cards are only supported for purchases up to [[Currency]][[MaxPlanAmount]]. Please provide payment details for a credit card in order to support your total purchase amount.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-5421

InvalidCCCardBrandNotSupportedMoreThanXInstallments: [[CardBrand]] cards are supported only up to [[MaxInstallmentsLimit]] installments. Please reduce the number of installments or provide payment details for a supported credit card.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-5422

InvalidCCCardBrandNotSupportedMoreThanXAmount: [[CardBrand]] cards are only supported for purchases up to [[Currency]][[MaxPlanAmount]]. Please try a different card.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-5801

InvalidCcPrepaidCardNotSupportedMoreThanXInstallments: [[CardType]] cards allow a maximum of [[MaxInstallmentsLimit]] installments. Please choose fewer installments or try a different credit card.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-5802

InvalidCcPrepaidCardNotSupportedMoreThanXAmount: The maximum purchase for [[CardType]] cards is [[Currency]][[MaxPlanAmount]]. Please try a different card.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-5911

PlanContextNotValidForAmount: Purchase is only supported for up to [[Currency]][[MaxPlanAmount]]. Please provide payment details for a credit card in order to support your total purchase amount.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL
400-5982

PlanContextNotValidForAmount: Purchase is only supported for up to [[Currency]][[MaxPlanAmount]]. Please provide payment details for a credit card in order to support your total purchase amount.

Schema OPTIONAL
TraceId string OPTIONAL
Error object OPTIONAL
Code string OPTIONAL
Message string OPTIONAL
AdditionalInfo string OPTIONAL
ExtraData object OPTIONAL