Common structure on all calls
The following structure will be common through all transactions. Additionally every operation will have it’s specific elements.
The request objects contains the supplier’s configuration, urls and credentials. The response object contains the operation details and errors if any.
Common Structure RQ Example
<MethodRQ>
<timeoutMilliseconds>60000</timeoutMilliseconds>
<source>
<languageCode>es</languageCode>
</source>
<filterAuditData>
<registerTransactions>false</registerTransactions>
</filterAuditData>
<Configuration codeProvider = "SFT">
<Credentials user = "test53245" password = "pn_test_1">
<UrlGeneric>https://providerurl.com/api</UrlGeneric>
<UrlTransactionReport>https://providerurl.com/report</UrlTransactionReport>
</Credentials>
<Attributes>
<Attribute key = " " value = " "/>
...
</Attributes>
</Configuration>
<BaseCallBacks>
<Urls>
<Url Type="Success" Label="myLabel">http://travelgatex.com/callback</Url>
...
</Urls>
</BaseCallBacks>
</MethodRQ>
Common Structure RQ Description
Element | Number | Type | Description |
---|---|---|---|
MethodRQ | 1 | Root node. It’s tag won’t be MethodRQ but the actual method rq root node name. CreatePaymentRQ, CapturePaymentRQ, … | |
timeoutMillisencods | 1 | Integer | Timeout in milliseconds that client will be waiting the response. |
source | 1 | Information about source requesting the operation. | |
source/languageCode | 1 | String | Language code (ISO 3166-1 alpha-2) format. |
source/agencyCode | 1 | String | Client’s agency code |
filterAuditData | 1 | Information about enable or disable information returned in audit data. | |
filterAuditData/registerTransactions | 1 | Boolean | If true, registers the transactions with provider. |
Configuration | 1 | Information about source requesting the operation. | |
@codeProvider | 1 | String | Agency code of the Provider. |
Configuration/Credentials | 1 | Provider credentials. | |
@User | 0..1 | String | User code for connection. |
@Password | 0..1 | String | Password for connection. |
Configuration/Credentials/UrlGeneric | 0..1 | String | Url generic for connection. |
Configuration/Credentials/UrlTransactionReport | 0..1 | String | Url for connection to provider reports |
Configuration/Attributes | 0..1 | Parameters for additional information. | |
Configuration/Attributes/Attribute | 1..n | List of Attributes. | |
@key | 1 | String | Contains the keyword/Id to identify a parameter. |
@value | 1 | String | Contains the value of the parameter |
@mandatory | 0..1 | boolean | Indicates if the attribute is mandatory in all calls or not |
BaseCallBacks | 1 | Contains information about the payment redirection of the client from the providers web page. | |
BaseCallBacks/Urls | 1 | [List of Url] Contains information about urls to redirect the client from the providers web page. | |
BaseCallBacks/Urls/Url | 1..n | String | Contains information of where the provider will redirect the client of the payment goes good or wrong. |
@Type | 1 | String | Type of the Url (possible values: “Success”, “Fail” or “Notification”). |
@Status | 0..1 | String | If the Url type is Notification, you can define what type of notification you what to receive in this Url. Only if provider allows it, check StaticConfiguration. (possible values: “Received”, “Denied”, “Refunded” or “Pending”). |
Common Structure RS Example
<MethodRS>
<operationImplemented>true</operationImplemented>
<Success>True</Success>
<Warnings>
<Warning Code="123">Warning Description</Warning>
...
</Warnings>
<Errors>
<Error Code = "101" ShortText = "3">Unable to make a reservation</Error>
...
</Errors>
<auditData>
<transactions>
<Transaction>
<timeStamp>2011-10-6T15:19:45.3544495+02:00</timeStamp>
<RQ />
<RS />
</Transaction>
</transactions>
<timeStamp>2013-11-18T15:19:43.4014745+02:00</timeStamp>
<processTimeMilliseconds>19532</processTimeMilliseconds>
</auditData>
</MethodRS>
Common Structure RS Description
Element | Number | Type | Description |
---|---|---|---|
MethodRS | 1 | Root node. It’s tag won’t be MethosRS but the actual method rs root node name. CreatePaymentRS, CapturePaymentRS, … | |
OperationImplemented | 1 | Boolean | If the operation is implemented by this provider or not. |
Success | 1 | String | Indicates the result of the action. |
Warnings | 0..1 | List of warnings reported by provider. | |
Warnings/Warning | 1..n | String | Warning description |
@Code | 1 | String | Typified warning of TravelgateX. |
Errors | 0..1 | List of errors reported by provider. | |
Errors/Error | 1..n | String | Error description |
@Code | 1 | String | Typified error of TravelgateX. |
@ShortText | 1 | String | Native error code reported by provider. |
auditData | 1 | Information about processing that transaction. | |
auditData/transactions | 0..1 | List of transactions communicated with provider. | |
auditData/transactions/transaction | 1..n | Transaction communicated with provider. | |
auditData/transactions/transaction/timeStamp | 1 | Integer | TimeStamp in which has been generated that transaction. |
auditData/transactions/transaction/RQ | 1 | String | Transaction Request. |
auditData/transactions/transaction/RS | 1 | String | Transaction Response. |
auditData/timeStamp | 1 | Integer | TimeStamp which response has been generated. |
auditData/processTimeMilliseconds | 1 | Integer | Time in milliseconds consumed by this method. |