# SOAP

The adapter converts SOAP requests to JSON body, send it to our existing API and converts back the JSON response to SOAP envelope.

Our SOAP adapter is dynamic and will support all our future releases and endpoints.

The interaces are identical to our exisitng REST interfaces.

### Endpoints

{% tabs %}
{% tab title="Production" %}
API URL: <https://api.sensepass.com/api-soap/>
{% endtab %}

{% tab title="Sandbox (Testing)" %}
API URL: <https://api.sandbox.sensepass.com/api-soap/>
{% endtab %}
{% endtabs %}

## Example for Creating a new transaciton

**URL**: <https://api.sandbox.sensepass.com/api-soap/transactions/init>

**Method**: POST

**Request Body**

```xml
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <SensePass>
            <amount>7000</amount>
            <timeOut>500</timeOut>
            <currency>USD</currency>
            <isCent>true</isCent>
            <deviceId>Your-Device-ID</deviceId>
            <products>
                <name>Product1</name>
                <quantity>1</quantity>
                <amount>3500</amount>
                <discount>0</discount>
            </products>
            <products>
                <name>Product2</name>
                <quantity>1</quantity>
                <amount>3500</amount>
                <discount>0</discount>
            </products>
        </SensePass>
    </soap:Body>
</soap:Envelope>
```

**Response Body**

```xml
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <SensePass>
            <TransactionNumber>2214cd9462fc815935f43e4379d9e90179f92ec60cd589267a104eb2</TransactionNumber>
            <date>2024-05-16T12:56:11.765Z</date>
            <amount>70</amount>
            <baseAmount>70</baseAmount>
            <currency>USD</currency>
            <status>0</status>
            <statusName>Initialize</statusName>
            <timeoutDate>2024-05-16T13:04:31.914Z</timeoutDate>
            <paymentCommit>
                <messsage>Payment commit is enabled for this transaction</messsage>
            </paymentCommit>
            <methodType>0</methodType>
            <businessId>127438685431131</businessId>
            <businessName>SensePass</businessName>
            <pos>POS 1</pos>
            <businessOwnerPhone>09852133</businessOwnerPhone>
            <businessCountry>USA</businessCountry>
            <businessCity>AA</businessCity>
            <businessState>NY</businessState>
            <businessStreet>14th</businessStreet>
            <businessHouseNumber>12</businessHouseNumber>
            <businessAddress>NY</businessAddress>
            <businessLocaleName>USA</businessLocaleName>
            <branchNumber>3</branchNumber>
            <branchId>3</branchId>
            <branch>
                <number>3</number>
            </branch>
            <locale>
                <name>Canada</name>
                <currency>CAD</currency>
                <timezone>Canada/Eastern</timezone>
                <timezoneNumber>-5</timezoneNumber>
                <phoneNumberPrefix>1</phoneNumberPrefix>
                <countryIso>CA</countryIso>
                <language>en</language>
            </locale>
            <products>
                <name>Product1</name>
                <amount>35</amount>
                <discount>0</discount>
                <discountedAmount>35</discountedAmount>
                <vat>0</vat>
                <quantity>1</quantity>
                <total>35</total>
            </products>
            <products>
                <name>Product2</name>
                <amount>35</amount>
                <discount>0</discount>
                <discountedAmount>35</discountedAmount>
                <vat>0</vat>
                <quantity>1</quantity>
                <total>35</total>
            </products>
            <productsSum>
                <allAmountSum>70.00</allAmountSum>
                <allTipSum>NaN</allTipSum>
                <allVatSum>0.00</allVatSum>
                <allTotalSum>70.00</allTotalSum>
                <allDiscountSum>0.00</allDiscountSum>
                <allDiscountedAmountSum>70.00</allDiscountedAmountSum>
            </productsSum>
            <paymentMethodImages/>
            <transactionPage>
                <qrURL>https://pay.sandbox.sensepass.com/orderSummary/2214cd9462fc815935f43e4379d9e90179f92ec60cd589267a104eb2</qrURL>
                <consumerPage>
                    <description>Consumer Payment Page</description>
                    <regular>https://pay.sandbox.sensepass.com/orderSummary/2214cd9462fc815935f43e4379d9e90179f92ec60cd589267a104eb2</regular>
                    <medium>https://pay.sandbox.sensepass.com/orderSummary/2214cd9462fc815935f43e4379d9e90179f92ec60cd589267a104eb2?viewMode=medium</medium>
                    <small>https://pay.sandbox.sensepass.com/orderSummary/2214cd9462fc815935f43e4379d9e90179f92ec60cd589267a104eb2?viewMode=small</small>
                </consumerPage>
                <merchantPage>
                    <creditCard>
                        <description>Credit Card iFrame for consumer payment</description>
                        <small>https://api.sandbox.sensepass.com/api/transactions/sensepass-pci/credit-card/2214cd9462fc815935f43e4379d9e90179f92ec60cd589267a104eb2?component=landing&amp;viewMode=eyJoaWRlU2F2ZUNhcmQiOnRydWV9</small>
                        <regular>https://api.sandbox.sensepass.com/api/transactions/sensepass-pci/credit-card/2214cd9462fc815935f43e4379d9e90179f92ec60cd589267a104eb2?component=landing&amp;viewMode=eyJoaWRlU2F2ZUNhcmQiOnRydWV9</regular>
                        <default>https://api.sandbox.sensepass.com/api/transactions/sensepass-pci/credit-card/2214cd9462fc815935f43e4379d9e90179f92ec60cd589267a104eb2?component=landing&amp;viewMode=eyJoaWRlU2F2ZUNhcmQiOnRydWV9</default>
                    </creditCard>
                    <paymentPage>
                        <description>Payment Page for associate payment - The Payment details will not be saved</description>
                        <regular>https://pay.sandbox.sensepass.com/orderSummary/2214cd9462fc815935f43e4379d9e90179f92ec60cd589267a104eb2?oneTime=true</regular>
                        <medium>https://pay.sandbox.sensepass.com/orderSummary/2214cd9462fc815935f43e4379d9e90179f92ec60cd589267a104eb2?viewMode=medium&amp;oneTime=true</medium>
                        <small>https://pay.sandbox.sensepass.com/orderSummary/2214cd9462fc815935f43e4379d9e90179f92ec60cd589267a104eb2?viewMode=small&amp;oneTime=true</small>
                    </paymentPage>
                    <POS>
                        <description>POS iFrame for merchants</description>
                        <regular>https://pos.sandbox.sensepass.com?mode=transaction&amp;transactionEventId=8cb3ce3c-7518-4ec4-8643-3d5fe04f466e-0a493dde-7e7c-4f6f-aabc-1b3d148a3156</regular>
                    </POS>
                </merchantPage>
            </transactionPage>
            <paymentMethodData>
                <PaymentType>Bit</PaymentType>
                <directAppLinks>
                    <iOSLink>https://pay.sandbox.sensepass.com/orderSummary/2214cd9462fc815935f73e4379d9e90179f92ec60cd589267a104eb2</iOSLink>
                    <androidLink>https://pay.sandbox.sensepass.com/orderSummary/2214cd9462fc815935f73e4379d9e90179f92ec60cd589267a104eb2</androidLink>
                    <qrURL>https://pay.sandbox.sensepass.com/orderSummary/2214cd9462fc815935f73e4379d9e90179f92ec60cd589267a104eb2</qrURL>
                </directAppLinks>
            </paymentMethodData>
        </SensePass>
    </soap:Body>
</soap:Envelope>


```

## Example for Fetching Transaction Status

**URL:** <https://api.sandbox.sensepass.com/api-soap/transactions/2214cd9462fc815935f43e4379d9e90179f92ec60cd589267a104eb2>

**Method**: GET

**Request Body**

```xml
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <SensePass>
            <deviceId>Your-Device-ID</deviceId>
        </SensePass>
    </soap:Body>
</soap:Envelope>
```

**Response Body**

```xml
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <SensePass>
            <TransactionNumber>2214cd9462fc815935f43e4379d9e90179f92ec60cd589267a104eb2</TransactionNumber>
            <date>2024-05-16T12:56:11.765Z</date>
            <amount>70</amount>
            <baseAmount>70</baseAmount>
            <currency>USD</currency>
            <status>0</status>
            <statusName>Initialize</statusName>
            <timeoutDate>2024-05-16T13:04:31.914Z</timeoutDate>
            <maxInstallments>1</maxInstallments>
            <reason/>
            <methodType>0</methodType>
            <businessId>127438685431131</businessId>
            <businessName>SensePass</businessName>
            <pos>POS 1</pos>
            <businessOwnerPhone>09852133</businessOwnerPhone>
            <businessCountry>USA</businessCountry>
            <businessCity>AA</businessCity>
            <businessState>NY</businessState>
            <businessStreet>14th</businessStreet>
            <businessHouseNumber>12</businessHouseNumber>
            <businessAddress>NY</businessAddress>
            <businessLocaleName>USA</businessLocaleName>
            <locale>
                <language>en</language>
            </locale>
            <products>
                <name>Product1</name>
                <description/>
                <productType>0</productType>
                <amount>35</amount>
                <posIdentifier/>
                <discount>0</discount>
                <discountedAmount>35</discountedAmount>
                <vat>0</vat>
                <quantity>1</quantity>
                <total>35</total>
            </products>
            <products>
                <name>Product2</name>
                <description/>
                <productType>0</productType>
                <amount>35</amount>
                <posIdentifier/>
                <discount>0</discount>
                <discountedAmount>35</discountedAmount>
                <vat>0</vat>
                <quantity>1</quantity>
                <total>35</total>
            </products>
            <productsSum>
                <allAmountSum>70.00</allAmountSum>
                <allTipSum>NaN</allTipSum>
                <allVatSum>0.00</allVatSum>
                <allTotalSum>70.00</allTotalSum>
                <allDiscountSum>0.00</allDiscountSum>
                <allDiscountedAmountSum>70.00</allDiscountedAmountSum>
            </productsSum>
            <paymentMethodImages/>
            <clientPhoneNumber/>
            <clientEmail/>
            <transactionPage>
                <merchantPage>
                    <creditCard>
                        <small>https://api.sandbox.sensepass.com/api/transactions/sensepass-pci/credit-card/2214cd9462fc815935f43e4379d9e90179f92ec60cd589267a104eb2?component=landing&amp;viewMode=eyJoaWRlU2F2ZUNhcmQiOnRydWV9</small>
                        <regular>https://api.sandbox.sensepass.com/api/transactions/sensepass-pci/credit-card/2214cd9462fc815935f43e4379d9e90179f92ec60cd589267a104eb2?component=landing&amp;viewMode=eyJoaWRlU2F2ZUNhcmQiOnRydWV9</regular>
                        <default>https://api.sandbox.sensepass.com/api/transactions/sensepass-pci/credit-card/2214cd9462fc815935f43e4379d9e90179f92ec60cd589267a104eb2?component=landing&amp;viewMode=eyJoaWRlU2F2ZUNhcmQiOnRydWV9</default>
                    </creditCard>
                </merchantPage>
            </transactionPage>
        </SensePass>
    </soap:Body>
</soap:Envelope>
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sensepass.com/sensepay/transaction-api/soap-and-xml/soap.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
