Operational Manual to Create New E-Payment Partner.


This manual will describe the process of Stages To create an E-Payment via the B2B engine.


  1. Create a new B2B E-Payment Partner

INSERT INTO gen.gnqb2p (gnqb2bpcode,gnqb2bpname,gnqepayyn) VALUES ('MWEB','MWEB E-Payments','N');


  1. Create a DB procedure to encode the Standard ITS XML output. We suggest you do this in the E-payments package iz1pkg.sql. Remember iz1pkg.sql is only for E-payments. If you want to do something else, then start a new package and create a structure similar to iz1pkg.sql. The package MUST have a procedure called get_xml that will generate the Standard ITS XML output. (Example: iz1pkg.extra_MWEB) This procedure must do any validation or additional changes to the Standard ITS XML output.
  2. Create a transformation style sheet that will take the Standard ITS XML output after it has gone through the extra_XXXX procedure and convert it into the format that the E-payments partner requires. (Example: iz1MWEBo.xsl)
  3. Create a transformation style sheet that will take the Response from the E-payment partner and convert it into the Standard ITS Response XML format. (Example: iz1MWEBi.xsl)
  4. Create a DB procedure to decode the Standard ITS Response XML format. This procedure should be used to i.e. change the bank's response code into an ITS acceptable response code. (Example: iz1pkg.decode_MWEB)

Code Structures involved


E-Payment Partners
E-Payment Transactions
B2B parameters for E-Payments
  1. USEWALLET:
  1. URL:
  1. URLPATH:
This is a list of Optional codes that could be created for each partner
  1. EPROC:
  1. DPROC:
  1. OUT:
  1. OUTFC:
  1. OUTTC:
  1. IN:
  1. INFC:
  1. INTC:
  1. HDR:
  1. EXTRA:

Installation

set serveroutput on size 20000
CREATE OR REPLACE PROCEDURE xxolltst IS
 v_pieces     SYS.UTL_HTTP.HTML_PIECES;
 v_url        VARCHAR2(2000);
 v_blob       BLOB;
 v_clob       CLOB;
  v_wallet_file     VARCHAR2(256) := gen.g54_its_sod('WF', 'BB', 'A'); -- 'file://disk3/itsv13';
  v_wallet_password VARCHAR2(256) := gen.g54_its_sod('WP', 'BB', 'A'); -- 'admin123';
  v_var XMLTYPE;
  v_value VARCHAR2(2000);
BEGIN
 
  --v_url := 'http://www.its.co.za';
  --v_url := 'http://www.its.co.za/info/index.php';
  v_url := 'https://secure.safeshop.co.za/s2s/myip.asp';
 
  DBMS_LOB.CreateTemporary(v_blob, FALSE);
  DBMS_LOB.CreateTemporary(v_clob, FALSE);

   UTL_HTTP.SET_WALLET(v_wallet_file, v_wallet_password);
   UTL_HTTP.set_transfer_timeout(7200); 
   v_pieces := UTL_HTTP.request_pieces(v_url, 200000);

   FOR v_i IN 1..v_pieces.count LOOP
      DBMS_LOB.WriteAppend(v_blob,
                           LENGTH(v_pieces(v_i)),
                           UTL_RAW.CAST_TO_RAW(v_pieces(v_i)));
    END LOOP;
 
  gen.g10pkg.blob2clob(v_blob, v_clob);

  v_var := XMLTYPE(v_clob);
  SELECT EXTRACTVALUE(v_var, '/Safe/RemoteIP')
  INTO v_value
  FROM DUAL;
  DBMS_OUTPUT.PUT_LINE('IP='||v_value);
 
  --DBMS_LOB.freeTemporary(v_clob);
  --DBMS_LOB.CreateTemporary(v_clob, FALSE);
  --SELECT updateXML(v_var, '/Safe/RemoteIP/text()', '********').EXTRACT('/').getCLobVal()
  --INTO v_clob
  --FROM gen.gaoins;

  DBMS_OUTPUT.PUT_LINE('---------------------------');
  DBMS_OUTPUT.PUT_LINE(SUBSTR(v_clob,1,250));
  DBMS_OUTPUT.PUT_LINE(SUBSTR(v_clob,251,250));
  DBMS_OUTPUT.PUT_LINE(SUBSTR(v_clob,501,250));
  DBMS_OUTPUT.PUT_LINE('---------------------------');
 
  DBMS_LOB.freeTemporary(v_clob);
  DBMS_LOB.freeTemporary(v_blob);
END xxolltst;
/
show errors

execute xxolltst;

drop procedure xxolltst;


  1. cwallet.sso
  2. ewallet.der
  3. ewallet.p12

<?xml version="1.0" ?><Safe><RemoteIP>196.46.143.212</RemoteIP></Safe>


Debugging

    1. Please ask user to create a Transaction type definitions for event number 'WD' using {FCSO-7}
    1. Ensure that B2B parameters 'ECODE' and 'DCODE' for the Partner is correct in {GCS2-12} (OR {GCS2-18} in Integrator)
    1. Please Check i02pkg.i02_ins_iamlog as it might raise an exception. If so just recompiled i02pkg.


Processing
Rules
 
  No special processing rules.




See Also:



History of Changes

Date System Version By Whom Job Description
29-Oct-2009 v01.0.0.0 Charlene van der Schyff t160044 New manual.