# Protocols and Conventions
Overview
Integration with Inter API is made using the SOAP messaging standard. Web Service Description Language (WSDL) documents that describe the Web Services and their messaging formats will be provided specifically for each partner in separate URLs.
Field Requirements
The requirements for each field are defined by code letters as follows:
| Code | Meaning | Description |
|---|---|---|
| R | Required | Value must always be provided |
| O | Optional | Value may be omitted |
| C | Conditional | Required based on compliance or other business rules |
SOAP Message Structure
SOAP Request Example
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<AuthHeader xmlns="http://mts.geobridge.org/">
<UserName>partner_user</UserName>
<Password>secure_password</Password>
</AuthHeader>
</soap:Header>
<soap:Body>
<CreateNewOrder xmlns="http://mts.geobridge.org/">
<AgentID>12345</AgentID>
<AgentOrderReference>REF-2025-001</AgentOrderReference>
<ClientFirstName>John</ClientFirstName>
<ClientLastName>Doe</ClientLastName>
<AmountToSend>1000.00</AmountToSend>
<CurrencyToSend>USD</CurrencyToSend>
<RecipientCountry>BR</RecipientCountry>
<TypeOfPaymentID>42</TypeOfPaymentID>
</CreateNewOrder>
</soap:Body>
</soap:Envelope>
SOAP Response Example
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<CreateNewOrderResponse xmlns="http://mts.geobridge.org/">
<CreateNewOrderResult>
<Order>
<OrderID>987654321</OrderID>
<AgentOrderReference>REF-2025-001</AgentOrderReference>
<OrderProcessingTime>2025-11-05T14:30:00-03:00</OrderProcessingTime>
<OrderAcceptanceCode>A</OrderAcceptanceCode>
<StatusCode>1</StatusCode>
<ResultCodes>1000</ResultCodes>
</Order>
</CreateNewOrderResult>
</CreateNewOrderResponse>
</soap:Body>
</soap:Envelope>
Error Handling
SOAP Fault Structure
When an error occurs, the API returns a SOAP Fault:
<soap:Fault>
<faultcode>soap:Client</faultcode>
<faultstring>Invalid parameter: AmountToSend must be greater than 0</faultstring>
<detail>
<ErrorCode>1001</ErrorCode>
<ErrorMessage>Amount validation failed</ErrorMessage>
</detail>
</soap:Fault>
Best Practices
1. XML Validation
Always validate your XML against the WSDL schema before sending:
// Example using xmllint
const { exec } = require('child_process');
exec('xmllint --schema service.xsd request.xml', (error, stdout) => {
if (error) {
console.error('XML Validation Error:', stdout);
}
});
2. Namespace Handling
Always include the correct namespace in your requests:
<CreateNewOrder xmlns="http://mts.geobridge.org/">
<!-- Parameters -->
</CreateNewOrder>
3. Date/Time Formatting
Use ISO 8601 format consistently:
// JavaScript example
const now = new Date();
const isoDateTime = now.toISOString(); // "2025-11-05T14:30:00.000Z"
5. Field Order
Maintain the field order as specified in the WSDL. Some SOAP implementations are sensitive to element order.
WSDL Access
Your partner-specific WSDL URL will be provided during onboarding:
Sandbox:
https://test.masspayments.inter.co/partner/api/service.asmx?wsdl
Production:
https://masspayments.inter.co/partner/api/service.asmx?wsdl
Testing Tools
Example curl Request
curl -X POST https://test.masspayments.inter.co/partner/api/service.asmx \
-H "Content-Type: text/xml; charset=utf-8" \
-H "SOAPAction: http://mts.geobridge.org/GetActiveCountries" \
-d @request.xml
Last Updated: November 5, 2025 Version: 2.0