With our Gateway embedded hosted form functionality, you can achieve quick, efficient, and secure online transactions, without the worry of PCI compliance.The overall process to generate and prepare a hosted gateway payment form is as follows.1.
Create a POST request with the required parameters for your needs
2.
We will return the code of the hosted form and the URL in the response
| Fields | Description | Type | Required |
|---|
| dba | Dba Object | Object | Yes |
| dba.id | DBA ID | Integer | Yes |
| terminal | Terminal Object | Object | Yes |
| terminal.id | Terminal ID | Integer | Yes |
| threeds | Activate 3D Secure Required, Disabled or RequiredIfAvailable | ENUM | No |
| amount | Payment Amount | Number | No |
| feeType | The type of sales tax applied amount or percent | ENUM | No |
| fee | The sales tax value applied to the order | Number | No |
| externalId | Unique record identifiers from a system outside of Payment Gateway | String | No |
| origin | Origin of the transaction (i.e. Website, CRM, etc) | String | No |
| returnUrl | The return URL after payment completion (i.e success/error page) | String | No |
| returnUrlNavigation | How to redirect the URL (Inside/Outside of frame) top or self | ENUM | No |
| useLogo | Use the logo of your merchant profile Yes or No | ENUM | No |
| visibleNote | Adds an additional text field to the hosted form Yes or No | ENUM | No |
| requestBillingInfo | Adds a billing info step to the hosted form Yes or No | ENUM | No |
| billingInfo | Object holding customer's billing information | Object | No |
| billingInfo.country | Customer's billing country | String | No |
| billingInfo.address | Customer's billing address | String | No |
| billingInfo.address2 | Customer's billing address2 | String | No |
| billingInfo.city | Customer's billing city | String | No |
| billingInfo.state | Customer's billing state | String | No |
| billingInfo.zip | Customer's billing zip | Integer | No |
| requestContactInfo | Adds a contact info step to the hosted form Yes or No | ENUM | No |
| contactInfo | Object Holding customer's contact information | Object | No |
| contactInfo.name | Customer's name | String | No |
| contactInfo.email | Customer's email | String | No |
| contactInfo.phone | Customer's phone | String | No |
| requestShippingInfo | Adds a shipping info step to the hosted form Yes or No | ENUM | No |
| shippingInfo | Object Holding customer's billing information | Object | No |
| shippingInfo.country | Customer's shipping country | String | No |
| shippingInfo.address1 | Customer's shipping address1 | String | No |
| shippingInfo.address2 | Customer's shipping address2 | String | No |
| shippingInfo.address3 | Customer's shipping address3 | String | No |
| shippingInfo.city | Customer's shipping city | String | No |
| shippingInfo.state | Customer's shipping state | String | No |
| shippingInfo.zip | Customer's shipping zip | Integer | No |
| sendReceipt | Send a customized receipt after successful payment Yes or No | ENUM | No |
The Amount and External ID are dynamic parameters that can still be provided after the form is generated.
If you want to dynamically provide Amount and External ID you can do so at the end of the URL using &amount=&externalId= or you can provide them in the corresponding javascript parameters. Keep in mind that if the amount is not provided the client will be prompted to enter it.
The return URL also gives you the option to change the mapping of specific parameters (, , and ) based on your needs.
The parameters that we have are as follows: Success, Failed, and Cancelled.IMPORTANT If you have set sendReciept to "Yes" requestContactInfo needs to be also "Yes" as well or no receipt will be generated.
Option 1#
We give you the ability to provide the contact and billing information in the request to generate the form. This will return you the form with those fields pre-filled. Example requests and responses are provided.Option 2#
We also give you the ability to dynamically set Contact and Billing information in your environment without the need to constantly generate new forms this is how:If you set requestContactInfo and/or requestBillingInfo to Yes, you can dynamically fill in the ‘contactInfo’ and/or ‘billingInfo’ objects which are present in the options of the response code of the generated form.
"data": "eyJkYmFJZCI6MTEyLCJ0ZXJtaW5hbElkIjoxMDksInRocmVlZHMiOiJEaXNhYmxlZCIsImV4dGVybmFsSWQiOiJleGFtcGxlIiwicmV0dXJuVXJsIjoiaHR0cHM6XC9cL2V4YW1wbGUuY29tIiwicmV0dXJuVXJsTmF2aWdhdGlvbiI6InRvcCIsImxvZ28iOiJZZXMiLCJ2aXNpYmxlTm90ZSI6IlllcyIsInJlcXVlc3RDb250YWN0SW5mbyI6IlllcyIsInJlcXVlc3RCaWxsaW5nSW5mbyI6IlllcyIsInNlbmRSZWNlaXB0IjoiIiwib3JpZ2luIjoiV0VCIiwiaGFzaCI6IjJhY2VjODNmNWRiMTdlNmQ2NTA1MjE5MTljYmY5ODQ1In0=",
"amount": 2,
"fee": 2,
"feeType": "amount",
"contactInfo": {
"name": "John Doe",
"email": "john.doe@example.com",
"phone": "+1 800 555 111"
},
"billingInfo": {
"country": "United States",
"address": "Example address 1",
"address2": "Example address 2",
"city": "Los Angeles",
"state": "California",
"zip": 90001
},
"shippingInfo": {
"country": "United States",
"address1": "Example address 1",
"address2": "Example address 2",
"address3": "Example address 3",
"city": "Los Angeles",
"state": "California",
"zip": 90001
}
Or you can add the base64 encoded version of ‘contactInfo’ and/or ‘billingInfo’ JSON.stringified objects in the URL. Like in the following JS example:
Modified at 2025-08-09 05:39:42