3.2. /api/v2/account-verification-form

Introduction

Account Verification form is initiated through HTTPS POST request by using URLs and the parameters specified below. Use SHA-1 for authentication. See Statuses.

API URLs

Integration

Production

https://sandbox.sbctech.ru/paynet/api/v2/account-verification-form/ENDPOINTID

https://gate.sbctech.ru/paynet/api/v2/account-verification-form/ENDPOINTID

https://sandbox.sbctech.ru/paynet/api/v2/account-verification-form/group/ENDPOINTGROUPID

https://gate.sbctech.ru/paynet/api/v2/account-verification-form/group/ENDPOINTGROUPID

Request Parameters

Note

Request must have content-type=application/x-www-form-urlencoded.
Leading and trailing whitespace in input parameters will be omitted.
Acquirer can redefine the necessity of some fields so they become required instead of optional.

Request parameter name

Description

Value

client_orderid

Unique order identifier assigned by Connecting Party.

Necessity: Required
Type: String
Length: 128

order_desc

Brief order description.

Necessity: Required
Type: String
Length: 64k

address1

Payer’s address line 1.

Necessity: Required
Type: String
Length: 50

city

Payer’s city.

Necessity: Required
Type: String
Length: 50

zip_code

Payer’s ZIP code.

Necessity: Required
Type: String
Length: 10

country

Payer’s country. Please see Country codes for a list of valid country codes.

Necessity: Required
Type: String
Length: 2

email

Payer’s e-mail address.

Necessity: Required
Type: String
Length: 50

ipaddress

Payer’s IP address, included for fraud screening purposes.

Necessity: Required
Type: String
Length: 45

control

Checksum generated by SHA-1. Control string is represented as concatenation of the following parameters:
1. <ENDPOINTID | ENDPOINTGROUPID> (See: Request URL)
2. Request parameter: client_orderid
3. Request parameter: email
4. merchant_control (Control key assigned to Connecting Party account in the SBC gateway system).
Necessity: Required
Type: String
Length: 128

first_name

Payer’s first name.

Necessity: Optional
Type: String
Length: 50

last_name

Payer’s last name.

Necessity: Optional
Type: String
Length: 50

ssn

Last four digits of the Payer’s social security number.

Necessity: Optional
Type: Numeric
Length: 32

birthday

Payer’s date of birth, in the format YYYYMMDD.

Necessity: Optional
Type: Numeric
Length: 8

state

Payer’s state. Please see Mandatory State codes for a list of valid state codes. Required for USA, Canada and Australia.

Necessity: Conditional
Type: String
Length: 2-3

phone

Payer’s full international phone number, including country code.

Necessity: Optional
Type: String
Length: 15

cell_phone

Payer’s full international cell phone number, including country code.

Necessity: Optional
Type: String
Length: 15

currency

Currency the transaction is charged in (three-letter currency code). Sample values are: USD for US Dollar EUR for European Euro.

Necessity: Optional
Type: String
Length: 3

site_url

The URL of the E-commerce entity, where the payment is originated from.

Necessity: Optional
Type: String
Length: 128

redirect_url

URL, where the Payer is redirected to upon completion of the transaction. Please note that redirection is performed in any case, no matter whether transaction is approved, declined or in any other final status.
Connecting Party must not use the parameters which come along with the redirect HTTP Request to treat the status of the transaction. Instead Connecting Party can utilize server_callback_url or status API command. Otherwise put https://doc.sbctech.ru/ if there is no need to redirect Payer anywhere. Use either redirect_url or a combination of redirect_success_url and redirect_fail_url, not both.
Necessity: Optional
Type: String
Length: 1024

redirect_success_url

URL, where the Payer is redirected to when transaction status is approved (See status list).
Connecting Party must not use the parameters which come along with the redirect HTTP Request to treat the status of the transaction. Instead Connecting Party can utilize server_callback_url or status API command. Otherwise put https://doc.sbctech.ru/ if there is no need to redirect Payer anywhere. Use either redirect_url or a combination of redirect_success_url and redirect_fail_url, not both.
Necessity: Optional
Type: String
Length: 1024

redirect_fail_url

URL, where the Payer is redirected to when transaction status is not approved (See status list).
Connecting Party must not use the parameters which come along with the redirect HTTP Request to treat the status of the transaction. Instead Connecting Party can utilize server_callback_url or status API command. Otherwise put https://doc.sbctech.ru/ if there is no need to redirect Payer anywhere. Use either redirect_url or a combination of redirect_success_url and redirect_fail_url, not both.
Necessity: Optional
Type: String
Length: 1024

server_callback_url

URL, where the transaction status is sent to. Connecting Party may use server callback URL for custom processing of the transaction completion, e.g. to collect payment data in the Connecting Party’s information system. For the list of parameters which come along with server callback to server_callback_url refer to Connecting Party callback parameters.

Necessity: Optional
Type: String
Length: 128

preferred_language

Payer’s two-letter language code for multi-language payment-forms.

Necessity: Optional
Type: String
Length: 2

merchant_form_data

Parameters sent as this parameter value are parsed into macros with the same name, the parameter is url-encoded, example: testparam%3Dtest1%26mynewparam%3Dtest2 and is parsed into $MFD_testparam = test1 and $MFD_mynewparam = test2 macros in the form. Parameter name characters[a-zA-Z0-9], parameter value characters[a-zA-Z0-9], control characters [=&], 2MB max size. For example, this parameter can be used to display payment form in light/dark mode depending on the value passed by Connecting Party (e.g. pass merchant_form_data=theme%3Ddark in request and $MFD_theme macro placeholder on payment form will be changed to dark.

Necessity: Optional
Type: String
Length: 128

Response Parameters

Note

Response has Content-Type: text/html;charset=utf-8 header. All fields are x-www-form-urlencoded, with (0xA) character at the end of each parameter’s value.

Response Parameters

Description

type

The type of response. May be async-form-response, validation-error, error etc.
If type equals validation-error or error, error-message and error-code parameters contain error details.

payet-order-id

Order id assigned to the order by SBC.

merchant-order-id

Connecting Party order id.

serial-number

Unique number assigned by SBC server to particular request from the Connecting Party.

error-message

If status is error this parameter contains the reason for decline or error details.

error-code

The error code is case of error status.

redirect-url

The URL to the page where the Connecting Party should redirect the Payer’s browser. Connecting Party should send HTTP 302 redirect, see Account Verification Form Flow.

Request Example

POST /paynet/api/v2/account-verification-form/39915 HTTP/1.1
User-Agent: curl/7.83.0
Accept: */*
Content-Length: 565
Content-Type: application/x-www-form-urlencoded
Connection: close

client_orderid=34T43R77N
&order_desc=Test Order Description
&first_name=John
&last_name=Smith
&ssn=1267
&birthday=19820115
&address1=100 Main st
&city=Seattle
&state=WA
&zip_code=98102
&country=US
&phone=+12063582043
&cell_phone=+19023384543
&email=john.smith@gmail.com
&ipaddress=65.153.12.232
&site_url=www.google.com
&currency=USD
&purpose=user_account1
&redirect_url=http://connectingparty.com/result
&server_callback_url=https://httpstat.us/200
&merchant_data=VIP customer
&merchant_form_data=testparam%3Dtest1%26mynewparam%3Dtest2
&control=5112b51084be33fa331d995d17b9d82af3bfbbc9

Success Response Example

HTTP/1.1 200
Server: server
Date: Wed, 10 May 2023 09:07:27 GMT
Content-Type: text/html;charset=utf-8
Connection: close
Vary: Accept-Encoding
X-XSS-Protection: 1
X-Content-Type-Options: nosniff
Strict-Transport-Security: max-age=31536000
Content-Language: en-US
Strict-Transport-Security: max-age=31536000
Content-Length: 285

type=async-form-response
&serial-number=00000000-0000-0000-0000-000002e378e8
&merchant-order-id=34T43R77N
&paynet-order-id=6998044
&redirect-url=https%3A%2F%2Fsandbox.sbctech.ru%2Fpaynet%2Fform%2Finit%2FBB587546567A31587163597A684535634A775969614A5538374E4535734B44743364784335716A7979316B673D

Fail Response Example

HTTP/1.1 200
Server: server
Date: Mon, 22 May 2023 11:36:59 GMT
Content-Type: text/html;charset=utf-8
Connection: close
Vary: Accept-Encoding
X-XSS-Protection: 1
X-Content-Type-Options: nosniff
Strict-Transport-Security: max-age=31536000
Content-Language: en-US
Strict-Transport-Security: max-age=31536000
Content-Length: 152

type=validation-error
&serial-number=00000000-0000-0000-0000-000002e5c587
&merchant-order-id=34T43R77N
&error-message=INVALID_CONTROL_CODE
&error-code=2

Postman Collection

Request Builder

endpointid or groupid

input the ENDPOINTID or ENDPOINTGROUPID

client_orderid

make it or use the internal invoice ID

order_desc
first_name
last_name
ssn
birthday
address1
city
state
zip_code
country
phone
cell_phone
email
ipaddress
site_url
currency
purpose
merchant_control

input the Control Key

redirect_url
redirect_success_url
redirect_fail_url
server_callback_url
merchant_data
merchant_form_data

String to sign
Signature