Actions17
- BankAgreementList
- CancelAllListDetail
- ConfirmGetBankAgreementDate
- GetBankAgreement
- GetCanceledDirectDebitList
- GetDirectDebitAgreement
- GetDirectDebitInfo
- GetDirectDebitList
- GetDirectDebitToInvoiceByDueDate
- GetInvoice
- GetPaymentCancel
- PaymentAllListDetail
- ReturnLink
- SetDirectDebit
- SetDirectDebitCancel
- SetPayment
- SetPaymentCancel
Overview
This node enables making authenticated SOAP web service requests specifically tailored for DSmart services. It is designed to interact with various SOAP operations exposed by the DSmart payment and banking system, such as retrieving invoice information, bank agreements, direct debit details, and payment statuses.
A common use case is automating financial workflows where you need to fetch invoice data or confirm payment statuses from the DSmart system. For example, you could use this node to automatically retrieve invoice details for a subscriber and then trigger further processing or notifications based on that data.
Properties
| Name | Meaning |
|---|---|
| SOAP Service URL | The URL endpoint of the SOAP web service to which requests are sent. Default points to the DSmart online payment system WSDL. |
| Authentication Source | How authentication credentials are provided: either using stored API credentials or manual input of username and password. |
| Authentication | When manual input is selected, this collection allows entering the username and password for SOAP authentication. |
| SOAP Envelope | The full SOAP envelope XML template for the selected operation. Supports variable placeholders like {{username}}, {{password}}, and other parameters, as well as n8n expressions (e.g., {{ $json.field }}). This XML defines the SOAP request body and header structure. |
For the GetInvoice operation specifically, the default SOAP envelope includes these key variables:
usernameandpassword: for authentication.bankCode: the bank identifier (default "24").subscriberNo: optional subscriber number to query.
Other variables like invoiceNo, paymentAmount, paymentDate, etc., are also available but empty by default.
Output
The node outputs an array of JSON objects, each corresponding to one input item processed. Each output object contains:
response: The parsed SOAP response body relevant to the invoked operation, extracted from the SOAP envelope's body and result fields.rawResponse: The raw XML string returned by the SOAP service.statusCode: HTTP status code of the SOAP response.statusText: HTTP status text of the SOAP response.
If an error occurs and "Continue On Fail" is enabled, the output will include an error object with:
error: Error message.statusCode,statusText,rawResponse: Details from the failed HTTP response if available.
The node does not output binary data.
Dependencies
- Requires access to the DSmart SOAP web service endpoint.
- Needs valid authentication credentials, either via stored API credentials or manual username/password input.
- Uses the
axioslibrary for HTTP requests. - Uses the
xml2jslibrary to parse XML SOAP responses into JSON.
No special environment variables are required beyond providing correct credentials and service URL.
Troubleshooting
- Authentication errors: If credentials are incorrect or missing, the SOAP service may reject requests. Verify username and password inputs or credential configuration.
- Timeouts: The node sets a 30-second timeout for SOAP requests. Network issues or slow responses may cause timeouts.
- Malformed SOAP envelope: Ensure the SOAP envelope XML is correctly formatted and all required variables are properly replaced.
- Parsing errors: If the SOAP response format changes or is unexpected, XML parsing might fail or return incomplete data.
- HTTP errors: Non-200 HTTP responses will be surfaced in the output; check the
statusCodeandstatusTextfor clues.
To resolve errors, verify credentials, network connectivity, and SOAP envelope correctness. Enable "Continue On Fail" to handle errors gracefully in workflows.
Links and References
- SOAP Web Services Introduction
- DSmart Online Payment System Documentation (Note: Replace with actual documentation link if available)
- Axios HTTP Client
- xml2js XML Parser