Sightline Deposit
Payment Method Sightline Deposit is used in the US.
The following method IDs are covered in this section:
ID | Name | Credit/Debit State |
---|---|---|
172 | Sightline Deposit | DepositedByProvider (29) |
Payment method interaction type: Synchronous execution (see Interaction Types).
Redirect Integration
Payment method Sightline Deposit is available in Checkout.
Example getRedirectData request for a Redirect Deposit (172), redirection to the Selection page (=directly to PXP Checkout selection page):
<getRedirectDataRequest xmlns="http://www.cqrpayments.com/PaymentProcessing"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<merchantID>{{merchant}}</merchantID>
<redirectParameters xsi:type="paymentMethodSelectionWithDetailsRedirectParameters">
<shopID>{{shop}}</shopID>
<httpMethod>GET</httpMethod>
<returnUrl>http://return</returnUrl>
<languageCode>en</languageCode>
<currencyCode>usd</currencyCode>
<countryCode>us</countryCode>
<additionalDetails>
<detail xsi:type="keyStringValuePair">
<key>Description</key>
<value>some description</value>
</detail>
</additionalDetails>
<user>
<id>{{newUserID}}</id>
<username>{{newUserName}}</username>
<firstname>Sherlock</firstname>
<lastname>Holmes</lastname>
<currencyCode>USD</currencyCode>
<languageCode>EN</languageCode>
<email>{{newUserEmail}}</email>
<address>
<street>Geneva Street</street>
<houseNumber>5</houseNumber>
<postalCode>61259</postalCode>
<city>Illinois City</city>
<state>IL</state>
<countryCode2>US</countryCode2>
<telephoneNumber>{{phoneNumber}}</telephoneNumber>
</address>
<dateOfBirth>1985-10-10T00:00:00</dateOfBirth>
<gender>Female</gender>
</user>
<merchantTransactionID>{{checkoutMerchantTransactionID}}</merchantTransactionID>
<grossAmount>100.00</grossAmount>
<minPaymentLimitAmount>10</minPaymentLimitAmount>
<maxPaymentLimitAmount>3000</maxPaymentLimitAmount>
<expirationTimeSpanInSeconds>3600</expirationTimeSpanInSeconds>
<successUrl>http://success</successUrl>
<pendingUrl>http://pending</pendingUrl>
<errorUrl>http://error</errorUrl>
<cancelUrl>http://cancel</cancelUrl>
<refusedUrl>http://refused</refusedUrl>
<paymentDirection>Deposit</paymentDirection>
</redirectParameters>
</getRedirectDataRequest>
Example getRedirectData request for a Redirect Deposit (172), redirection to the Detail page (=directly to PXP Checkout detail page):
<getRedirectDataRequest xmlns="http://www.cqrpayments.com/PaymentProcessing"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<merchantID>{{merchant}}</merchantID>
<redirectParameters xsi:type="paymentMethodDetailsRedirectParameters">
<shopID>{{shop}}</shopID>
<httpMethod>GET</httpMethod>
<returnUrl>http://return</returnUrl>
<languageCode>en</languageCode>
<currencyCode>usd</currencyCode>
<countryCode>us</countryCode>
<additionalDetails>
<detail xsi:type="keyStringValuePair">
<key>Description</key>
<value>my payment description</value>
</detail>
</additionalDetails>
<user>
<id>hc20210827181039</id>
<identificationNumber>355775613</identificationNumber>
</user>
<merchantTransactionID>{{checkoutMerchantTransactionID}}</merchantTransactionID>
<grossAmount>1.00</grossAmount>
<minPaymentLimitAmount>10</minPaymentLimitAmount>
<maxPaymentLimitAmount>3000</maxPaymentLimitAmount>
<expirationTimeSpanInSeconds>3600</expirationTimeSpanInSeconds>
<successUrl>http://www.google.com/result?param1=success?status=success</successUrl>
<pendingUrl>http://www.google.com/result?param1=pending?status=pending</pendingUrl>
<errorUrl>http://www.google.com/result?param1=error?status=error</errorUrl>
<cancelUrl>http://www.google.com/result?param1=cancel?status=cancel</cancelUrl>
<refusedUrl>http://www.google.com/result?param1=refuse?status=refuse</refusedUrl>
<paymentMethodID>172</paymentMethodID>
<isPaymentMethodChangeAllowed>false</isPaymentMethodChangeAllowed>
</redirectParameters>
</getRedirectDataRequest>
Example getRedirectData response:
<getRedirectDataResponse xmlns=http://www.cqrpayments.com/PaymentProcessing xmlns:xsd=http://www.w3.org/2001/XMLSchema xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance>
<redirectData>
<redirectUrl>https://payments.test2.kalixa.com/Checkout/PaymentMethods/172?requestData=m30h4kblzqatlb15f4qxdulb_46d32478-bf3d-4d04-9a8f-b733baa080d8</redirectUrl>
</redirectData>
</getRedirectDataResponse>
Customer using Sightline payment for the first time
- Customer will be redirected to the PXP payment method selection page.
- Customer selects Sightline payment method from the list of payment methods available on the payment method selection page.
- Customer need to enroll with Sightline provider if not already enrolled with the Sightline.
- If not already enrolled then Customer will see a spinner in the PXP checkout and will be redirected to the Sightline provider for the Enrollment.
- After the successful enrollment a balance enquiry check is initiated with the provider.
- After the successful balance enquiry check, customer is redirected to the PXP payment method detail page.
- Customer selects the payment account from the PXP details page and submits the payment.
- On Successful transaction, payment status will be DepositedByProvider and merchant can display the success information to the customer.
- On failed transaction, payment status will be RefusedByProvider and merchant can display the failure information to the customer.
Below screenshot shows an example of the payment selection page with Sightline listed as one of the payment method.
Below screenshot shows the redirection of the customer to Sightline for the Enrollment
Customer using Sightline payment for the second and subsequent time
- Bank Account added during Sightline Enrollment shall be displayed to the customer in the PXP checkout.
- If the customer selects an existing account then there is no redirection to the provider. PXP initiates a backend request to the provider with the already stored bank account details.
- On Successful transaction, payment status will be DepositedByProvider and PXP Checkout will redirect the customer to the success url as provided in the GetRedirectDataRequest.
- On failed transaction, payment status will be RefusedByProvider and PXP Checkout will redirect the customer to the error url as provided in the GetRedirectDataRequest.
Below screenshot shows the redirection of the customer to Payment details page when the enrollment is successfully completed
Backend2BackendIntegration
The following table contains the fields to be sent in the initiatePaymentRequest.specificPaymentAccountData xml section:
key (value type, account type, required) | value |
---|---|
AccountNumber (string, required) | User´s account ID for Sightline provider |
AccountIdentifierTypeId (Int) | ReferenceId = 1 MemberShipNumber = 2 The default value is ReferenceID unless specified by merchant |
The following parameters can be provided in initiatePaymentRequest.specificPaymentData:
key (value type, account type, required) | value |
---|---|
PaymentProviderID (Int) | Should be 121. |
LanguageCode (string) | The language of the user, used for localizing the UI displayed to the user |
CountryCode2 (string) | The country code of the request |
UserFirstname (string) | The first name of the user |
UserLastname (string) | The last name of the user |
IdentificationNumber (string) | The user`s identification number. It is being passed in both and sections. |
Example initiatePaymentRequest:
<initiatePaymentRequest xmlns="http://www.cqrpayments.com/PaymentProcessing">
<merchantID>YourMerchantID</merchantID>
<shopID>YourShopID</shopID>
<merchantTransactionID>5d37d7ac-f6f4-4752-bacf-4b3fd778de62</merchantTransactionID>
<paymentMethodID>172</paymentMethodID>
<amount currencyCode="USD">25</amount>
<userID>daee843b-cc2b-4dd4-9c4d-078eeb</userID>
<userData>
<username>daee843b-cc2b-4dd4-9c4d-078eeb</username>
<firstname>Clark</firstname>
<lastname>Kent</lastname>
<address>
<countryCode2>US</countryCode2>
<telephoneNumber xsi:nil="true"/>
</address>
<identificationNumber>2952423828234234</identificationNumber>
</userData>
<userIP>127.0.0.1</userIP>
<userSessionID>6d22207c-b9d3-45de-a5c1-b8b9c8752dce</userSessionID>
<creationTypeID>1</creationTypeID>
<specificPaymentData>
<data xsi:type="keyStringValuePair">
<key>LanguageCode</key>
<value>en</value>
</data>
<data xsi:type="keyStringValuePair">
<key>PaymentDescription</key>
<value>037f7850-aa94-48a7-9970-92e2c64d5604</value>
</data>
<data xsi:type="keyStringValuePair">
<key>UserFirstname</key>
<value>Clark</value>
</data>
<data xsi:type="keyStringValuePair">
<key>UserLastname</key>
<value>Kent</value>
</data>
<data xsi:type="keyStringValuePair">
<key>IdentificationNumber</key>
<value>2952423828234234</value>
</data>
<data xsi:type="keyStringValuePair">
<key>CountryCode2</key>
<value>US</value>
</data>
</specificPaymentData>
<paymentAccount>
<specificPaymentAccountData>
<data xsi:type="keyStringValuePair">
<key>AccountNumber</key>
<value>123456789</value>
</data>
<data xsi:type="keyStringValuePair">
<key>AccountIdentifierTypeId</key>
<value>1</value>
</data>
</specificPaymentAccountData>
</paymentAccount>
</initiatePaymentRequest>
Example initiatePaymentResponse:
<initiatePaymentResponse xmlns="http://www.cqrpayments.com/PaymentProcessing">
<payment xsi:type="paymentWithPaymentAccount" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<merchantID>YourMerchantID</merchantID>
<shopID>YourShopID</shopID>
<paymentMethod>
<key>172</key>
<value>SightlineDeposit</value>
</paymentMethod>
<merchantTransactionID>5d37d7ac-f6f4-4752-bacf-4b3fd778de62</merchantTransactionID>
<paymentID>576cc93d-4694-4e24-a220-b04aa2d2c78b</paymentID>
<userID>daee843b-cc2b-4dd4-9c4d-078eeb</userID>
<paymentProvider>
<key>121</key>
<value>Sightline</value>
</paymentProvider>
<amount currencyCode="USD">25</amount>
<creationType>
<key>1</key>
<value>User</value>
</creationType>
<userIP>127.0.0.1</userIP>
<state>
<id>4992986c-b023-47d6-b1f7-bbefe9e8aaca</id>
<definition>
<key>29</key>
<value>DepositedByProvider</value>
</definition>
<createdOn>2013-09-25T08:29:27.2310256Z</createdOn>
<description>DepositedByProvider</description>
<paymentStateDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderResponseCode</key>
<value>Approved</value>
</detail>
<detail xsi:type="keyStringValuePair">
<key>ProviderResponseMessage</key>
<value>Approved</value>
</detail>
</paymentStateDetails>
</state>
<isExecuted>true</isExecuted>
<baseAmount currencyCode="EUR">16.6</baseAmount>
<paymentDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderTransactionID</key>
<value>3988880444848780288</value>
</detail>
<detail xsi:type="keyStringValuePair">
<key>ProviderExternalID</key>
<value>991539</value>
</detail>
</paymentDetails>
<paymentAccount>
<paymentAccountID>ad97b590-2f24-4f87-9449-55cd0ef10672</paymentAccountID>
</paymentAccount>
</payment>
</initiatePaymentResponse>
Following field is returned in paymentDetails of initiatePaymentResponse:
Field name | Description |
---|---|
ProviderTransactionID | Sightline`s unique transactionID. |
Possible payment states in initiatePaymentResponse:
Payment State | Description |
---|---|
DepositedByProvider | Success state |
RefusedByProvider | Withdrawal was refused by provider |
ProviderCommunicationError | Error state because of failed communication with the provider, unexpected response received, etc. See State.Description for more details. |
State Diagram
Notifications
The standard notification mechanism is used for notifying the merchant in the background (asynchronously) about payment state changes. For more information see PaymentStateChangedNotification.
The final execution status has the following payment states:
Payment States | Description |
---|---|
RefusedByProvider (100) | Error state; payment was not accepted by provider. |
DepositedByProvider (29) | Success state; payment has been executed. |
Cancelled (113) | Error state; payment was refused by provider and automatically cancelled |
Example handlePaymentStateChangedNotificationRequest:
Example handlePaymentStateChangedNotificationResponse:
Updated over 2 years ago