Payment Form

SolidGate Payment Form is our all-in-one UI solution for accepting payments on your website or in APP using a single front-end implementation. Use our payment form if you want a quick way to start accepting payments on your website.

If you haven't done so already, follow our Get started guide to set up your test account and get your API key. 

How to receive payment form?  

To initialize the payment form you need to make the InitPayment request. In response, you'll receive the unique payment form URL. 

After that, you should show the payment form to your customer.  


In response, the payment web-page is to be received in specified design.


Form Initiation

InitPayment Request - is the operation of order initiating. It shall be used to request a payment form hosted at SolidGate end. This operation deems to create order in the system and return URL being applied while calling payment form.



    Request Body Parameters

order_idMstring(100)Order ID specified in merchant system123443334
amountMintegerOrder amount - integer without fractional component (i.e cents). For instance, 1020 means 10 USD and 20 cents. 1020
currencyMstring(3)Currency amount. 3 letter currency code under ISO-4217USD
order_descriptionMstring(255)A description of the paymentPremium package
order_dateOstring(50)Date of order creation in format YYYY-MM-DD-HH-MM-SS2018-08-07 11:21:30
order_itemsOstring(255)Order items in UTF-8 codeitem 1, item 2
order_numberOintegerNumber of payments by user1
subscription_product_idOstring(36)Product ID in SolidGate subscription service
callback_urlOstring(255)URL of merchant page, where response with payment result will be senthttp://merchant.example/callback
fail_urlOstring(255)URL of merchant page, which a customer will be redirected in case of unsuccessful paymenthttp://merchant.example/fail
success_urlOstring(255)URL of merchant page, which a customer will be redirected in case of successful paymenthttp://merchant.example/success
settle: delay_hoursMintegerTime (in hours) when auto-settle should be done24
websiteOstring(255)Website from which transaction took placehttp://merchant.example
processing_midMstring(255)Use this field to route your payment to specified MIDb0651d75db2
dynamic_descriptorOstring(50)The descriptor for the
three_dsOobjectInformation required for 3D Secure payments 
three_ds: forceObooleanFlag whether to send user for 3DS FlowFALSE
three_ds: attempt_non_secureObooleanDetermines whether to attempt a 3D Secure payment as non-3D Secure should the card issuer not be enrolledFALSE
customerMobjectDetails of the customer to associate with the source 
customer: user_idMstring(100)The identifier of an existing customercuid_y343t4mf46fdzuxjbcn2giaqnb44
customer: emailMstring(100)An optional email address to associate with the
customer: ip_addressMstring(50)The IP address used to make the payment. Required for risk checks8.8.8.8
customer: first_nameOstring(100)The customer's first nameChack
customer: last_nameOstring(100)The customer's last name.Blank
customer: phone_numberOstring(50)The payment source owner's phone number+1415 555 2671
customer: date_of_birthOstring(50)Birthdate in YYYY-MM-DD format. 2000-11-21
customer: ip_countryOstring(3)ISO-code of the country that was sent in the requestUSA
customer: delivery_addressOobjectThe delivery address 
customer: delivery_address: line1Ostring(100)The delivery address line 115 William St
customer: delivery_address: line2Ostring(100)The delivery address line 2 
customer: delivery_address: cityOstring(100)City of the delivery address New York
customer: delivery_address: stateOstring(100)State of the delivery address WA
customer: delivery_address: zipOstring(10)ZIP code of the delivery address 10005
customer: delivery_address: countryOstring(3)ISO country code of the delivery address USA
payment_form: languageOstring(2)Language code of requested Payment formEN


Init Request Sample

"order_id": "1234init",
"amount": 1800,
"currency": "USD",
"order_description": "testPayment",
"order_date": "RandomOrderDate",
"order_items": "RandomOrderItems",
"order_number": 123,
"subscription_product_id": "fd812ef4-953c-4cab-beec-c271ac521bf4",
"callback_url": "http://merchant.example/callback",
"fail_url": "http://merchant.example/fail",
"success_url": "http://merchant.example/success",
	"delay_hours": 0
"website": "Website",
"processing_mid": "12345", 
"dynamic_descriptor": "RandomDynamicDescriptor",
"three_ds": {
	"force": true,
	"attempt_non_secure": true
"customer": {
	"user_id": "RandomUserID",
	"email": "",
	"ip_address": "",
	"first_name": "FirstName",
	"last_name": "LastName",
	"phone_number": "+1415 555 2671",
	"date_of_birth": "2000-11-21",
	"ip_country": "USA",
		"line1": "Line1",
		"line2": "Line2",
		"city": "CityInit",
		"state": "State",
		"zip": "12345",
		"country": "USA"
	"payment_form": {
		"language": "en"


    Response Body Parameters

order_idstring(100)Order ID specified in merchant system123443334
amountintegerOrder amount - integer without fractional component (i.e cents). For instance, 1020 means 10 USD and 20 cents. 1020
currencystring(3)Currency amount. 3 letter currency code under ISO-4217USD
subscription_idstringID of subscription 23546e55
payment_form: form_urlstringURL of the payment form

Init Payment Response Sample | Success

    "order_id": "777",
    "amount": 2575,
    "currency": "USD",
    "subscription_id": "2c82c02f-966f-40c3-9102-d856a3a0e19b"
  "payment_form": {
    "form_url": "",

After form submits and order status change you receive post message to the parent window, which contains information of the order.

Predefined Templates (coming soon)

If you want to start accepting payments on your website or in APP with customized payment form you can always use Solid Templates. 

Contact your manager to receive details.