Query request response

From PlatiOnline.EU
Revision as of 16:46, 1 September 2016 by PlatiOnline (talk | contribs)
Jump to: navigation, search

Query Request Response

Once the Query Request XML_Message is successfully parsed the Plati Online system will process it.
Validate returned XML with schema: https://secure.plationline.eu/xml_validation/query.response.v5.xsd
<?xml version="1.0" encoding="utf-8"?>
<po_query_response>
	<po_error_code>
                <![CDATA[
			1 - an error occurred parsing the '''Query Request XML_Message''' and PlatiOnline will not process the request;
			0 - no error => '''Query Request XML_Message''' is valid and PlatiOnline will attempt to process the request.
		]]>
        </po_error_code>
	<po_error_reason>
		<![CDATA[the error message]]>
	</po_error_reason>
	<order>
		<f_order_number>
			<![CDATA[
				Numarul comenzii din sistemul comerciantului.
				Actest parametru face legatura dintre comanda din sistemul comerciantului si sistemul PO.
			]]>
		</f_order_number>
         	<tranzaction>
			<x_trans_id>
				<![CDATA[
					Reprezinta ID – ul tranzactiei in sistemul plationline.
					Acest ID identifica in mod unic tranzactia in cadrul sistemului plationline, 
					si este utilizat de fiecare data cand se modifica starile tranzactiei prin operatii specifice.
				]]>
			</x_trans_id>
			<x_time_stamp>
				<![CDATA[
					Reprezinta momentul in care s-a cerut autorizarea tranzactiei in sistemul plationline.
				]]>
			</x_time_stamp>
			<f_ip>
				<![CDATA[
					Reprezinta momentul in care s-a cerut autorizarea tranzactiei in sistemul plationline.
				]]>
			</f_ip>
			<status_fin1> 
			        <timestamp> = "Momentul GMT 0 in care tranzactia a trecut in acesta stare;
                                                   Formatul: YYYY-MM-DDThh:mm:ss

                                                   Date time in formatul ISO 8601.

                                                   http://en.wikipedia.org/wiki/ISO_8601">
			        </timestamp>
			        <code>
				     <![CDATA[
					Codul starii financiare 1.
					[[Vezi Anexa G.]]
				     ]]>
			        </code>
			</status_fin1>
			<status_fin2>
			        <timestamp> = "Momentul GMT 0 in care tranzactia a trecut in acesta stare;
                                                   Formatul: YYYY-MM-DDThh:mm:ss

                                                   Date time in formatul ISO 8601.

                                                   http://en.wikipedia.org/wiki/ISO_8601">
			        </timestamp>
			        <code>
				<![CDATA[
					Codul starii financiare 2.
					[[Vezi Anexa G.]]
				]]>
			        </code>
			</status_fin2>
			<status_cc>
			        <timestamp> = "Momentul GMT 0 in care tranzactia a trecut in acesta stare;
                                                   Formatul: YYYY-MM-DDThh:mm:ss

                                                   Date time in formatul ISO 8601.

                                                   http://en.wikipedia.org/wiki/ISO_8601">
			        </timestamp>
			        <code>
				<![CDATA[
					Codul starii de completare a comenzii.
					[[Vezi Anexa G.]]
				]]>
			        </code>
			</status_cc>
			<status_security>
			        <timestamp> = "Momentul GMT 0 in care tranzactia a trecut in acesta stare;
                                                   Formatul: YYYY-MM-DDThh:mm:ss

                                                   Date time in formatul ISO 8601.
			        </timestamp>
			        <code>
				<![CDATA[
					Codul starii de securitate.
					[[Vezi Anexa G.]]
				]]>
			        </code>
			</status_security>
			<status_sc>
			        <timestamp>= "Momentul GMT 0 in care tranzactia a trecut in acesta stare;
                                                   Formatul: YYYY-MM-DDThh:mm:ss

                                                   Date time in formatul ISO 8601.

                                                   http://en.wikipedia.org/wiki/ISO_8601">
			        </timestamp>
			        <code>
				<![CDATA[
					Codul starii comenzii din punct de vedere al serviciului clienti.
					[[Vezi Anexa G.]]
				]]>
			        </code>
			</status_sc>
			<f_shipping_company>
				<![CDATA[
					Numele companiei care face livrarea comenzii.
					Acesta valoare poate fi trimisa de comerciant cand face cererea de Incasare a tranzactiei.
				]]>
			</f_shipping_company>
			<f_awb>
				<![CDATA[
					Numarul documentului de transport de la compania care face livrarea.
					Acesta valoare poate fi trimisa de comerciant cand face cererea de Incasare a tranzactiei.
				]]>
			</f_awb>
			<f_cc_type>
				<![CDATA[
					Tipul cardului utilizat.
					Valoare= M – Card Mastercard sau Maestro;
					Valoare= V – Card Visa sau Visa Electron.
					Valoare= na – informatie indisponibila.
				]]>
			</f_cc_type>
			<f_amount>
				<![CDATA[
					Suma tranzactiei.
					Cu "punct" ca delimitator si 2 zecimale dupa delimitator.
				]]>
			</f_amount>
			<f_currency>
				<![CDATA[
					Moneda in care se face tranzactia.
					Valori: RON sau USD sau EUR
					]]>
			</f_currency>
		</tranzaction>
	</order>
</po_query_response>


To continue here is the Pseudo-code:

  1. Load the returned XML;
  2. if po_error_code = 1 echo the error message from po_error_reason tag;
  3. if po_error_code = 0 echo update the order status.