| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- const http = require('http');
- const server = http.createServer((req, res) => {
- let body = '';
- let hasInquiry = false;
- let hasPayment = false
- req.on('data', (chunk) => {
- body += chunk;
- });
- req.on('end', () => {
- hasInquiry = /<(\w+:)?Inquiry\b/.test(body);
- hasPayment = /<(\w+:)?Payment\b/.test(body);
- if (req.url === '/dummy-ws-mp-0004' && req.method === 'POST') {
- const xmlInquiryResponse = `<?xml version="1.0" encoding="utf-8"?>
- <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
- <SOAP-ENV:Body>
- <InquiryResponse xmlns="http://BTN-SNAP-UNDIP/">
- <rsp>000</rsp>
- <rspdesc>Success</rspdesc>
- <requestId>18260811134140</requestId>
- <reference>18</reference>
- <virtualAccountData>
- <virtualAccountNumber>9000140040625650097</virtualAccountNumber>
- <virtualAccountTrxType>F</virtualAccountTrxType>
- <virtualAccountName>Saifuddin Surya Basunjaya</virtualAccountName>
- <customerNumber>40040625650097</customerNumber>
- <totalAmount>8500000</totalAmount>
- </virtualAccountData>
- <additionalData>
- <semester>Ganjil 2026/2027</semester>
- <fakultas>SEKOLAH VOKASI</fakultas>
- <prodi>D4-Teknik Listrik Industri</prodi>
- <angkatan>2025</angkatan>
- </additionalData>
- </InquiryResponse>
- </SOAP-ENV:Body>
- </SOAP-ENV:Envelope>`;
- const xmlPaymentResponse = `<?xml version="1.0" encoding="utf-8"?>
- <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
- <SOAP-ENV:Body>
- <PaymentResponse xmlns="http://BTN-SNAP-UNDIP/">
- <rsp>000</rsp>
- <rspdesc>Success</rspdesc>
- <requestId>19260811134157</requestId>
- <reference>19</reference>
- <transactionDate>2026-08-11T13:42:00+07:00</transactionDate>
- <virtualAccountData>
- <virtualAccountNumber>9000140040625650097</virtualAccountNumber>
- <virtualAccountName>Saifuddin Surya Basunjaya</virtualAccountName>
- <customerNumber>40040625650097</customerNumber>
- <paidAmount>8500000</paidAmount>
- </virtualAccountData>
- <additionalData>
- <semester>Ganjil 2026/2027</semester>
- <fakultas>SEKOLAH VOKASI</fakultas>
- <prodi>D4-Teknik Listrik Industri</prodi>
- <angkatan>2025</angkatan>
- <jalur> </jalur>
- </additionalData>
- </PaymentResponse>
- </SOAP-ENV:Body>
- </SOAP-ENV:Envelope>`;
- if(hasInquiry) {
- res.writeHead(200, { 'Content-Type': 'text/xml; charset=ISO-8859-1' });
- res.end(xmlInquiryResponse);
- } else if (hasPayment) {
- res.writeHead(200, { 'Content-Type': 'text/xml; charset=ISO-8859-1' });
- res.end(xmlPaymentResponse);
- } else {
- res.writeHead(404, { 'Content-Type': 'text/plain' });
- res.end('Not found');
- }
- } else {
- res.writeHead(404, { 'Content-Type': 'text/plain' });
- res.end('Not found');
- }
- });
- });
- server.listen(3201, () => {
- console.log('SOAP dummy running at http://localhost:3201/dummy-ws-mp-0004');
- });
|