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 supports multiple operations related to banking and payment management, such as setting direct debits, retrieving bank agreements, canceling payments, and fetching invoice information.
A common use case is automating interactions with the DSmart online payment system, for example:
- Setting up a direct debit authorization for a subscriber.
- Querying payment or direct debit statuses.
- Canceling payments or direct debits programmatically.
By using this node, users can integrate DSmart SOAP APIs into their workflows without manually crafting SOAP requests or handling authentication details repeatedly.
Properties
| Name | Meaning |
|---|---|
| SOAP Service URL | The endpoint URL 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 by using stored API credentials or by manual input of username and password. |
| Authentication | When manual input is selected, this collection allows entering the username and password for SOAP API authentication. |
| SOAP Envelope | The full SOAP envelope XML string that will be sent in the request body. Supports variable placeholders like {{username}}, {{password}}, and other parameters, as well as n8n expressions (e.g., {{ $json.field }}). This property changes depending on the selected operation; for "SetDirectDebit" it includes fields like bankCode, subscriberNo, username, and password inside the SOAP body. |
Output
The node outputs an array of items where each item contains:
json.response: The parsed SOAP response object extracted from the SOAP envelope's body, focusing on the specific operation's result.json.rawResponse: The raw XML response string received from the SOAP service.json.statusCode: HTTP status code of the SOAP request.json.statusText: HTTP status text of the SOAP request.
If an error occurs and "Continue On Fail" is enabled, the output item will contain an error message along with any available HTTP status and raw response data.
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 POST requests. - Uses the
xml2jslibrary to parse XML SOAP responses into JSON objects.
Troubleshooting
- Authentication errors: If credentials are incorrect or missing, the SOAP service may reject requests. Verify username and password correctness and ensure they are properly injected into the SOAP envelope.
- Timeouts: The node sets a 30-second timeout for requests. Network issues or slow responses may cause timeouts. Check network connectivity and service availability.
- Malformed SOAP envelope: Ensure the SOAP envelope XML is correctly formatted and all required variables are provided. Missing or incorrect placeholders can cause SOAP faults.
- Parsing errors: If the SOAP response structure changes or is unexpected, parsing might fail or return incomplete data. Review the raw response (
rawResponse) for troubleshooting. - HTTP errors: Non-200 HTTP status codes indicate issues with the request or server. Inspect
statusCodeandstatusTextfor clues.
Links and References
- DSmart Online Payment System SOAP API Documentation (User should refer to official DSmart API docs for detailed operation descriptions and SOAP envelope structures.)
- SOAP Protocol Overview
- Axios HTTP Client
- xml2js XML Parser