2017 © Pedro Peláez
 

project erv-exi-soap

image

stephanwoerner/erv-exi-soap

  • Friday, July 20, 2018
  • by stephanwoerner
  • Repository
  • 1 Watchers
  • 0 Stars
  • 6 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 3 Versions
  • 0 % Grown

The README.md

erv-exi-soap

Soap Interface for ERGO travel insurance, (*1)

Contact support on ERGO insurance company and make a contract to get your private agengy indetifier, (*2)

contact@reiseversicherung.de, (*3)

Install

composer require stephanwoerner/erv-exi-soap, (*4)

add to your AppKernel.php, (*5)

public function registerBundles()
{
    $bundles = [
        .
        .
        .
        new StephanWoerner\ErvExiSoap\ErvExiSoapBundle(),

    ];
}

add to your services.yml, (*6)

services:
    sw.exi:
        class:        StephanWoerner\ErvExiSoap\Exi
        arguments:    ["@doctrine.orm.entity_manager", "%exi_agency_identifier%", "%exi_product_line%", "%exi_test_email%"]

and add exi_agency_identifier, exi_product_line and exi_test_email to your parameters.yml, (*7)

Database

Execute folowing query on your MySql database:, (*8)

CREATE TABLE exi_protocol (id INT AUTO_INCREMENT NOT NULL, date_created DATETIME NOT NULL, booking_reference INT, request_type VARCHAR(100) NOT NULL, request TEXT NOT NULL, response TEXT NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;

Example usage in Symfony Controller

$exi = $this->container->get('sw.exi');

$exi->init(
    'https://egate2.erv.de/exiws201909/ExiConnector?wsdl',
    'EUR',
    'DE',
    'DEU',
    true
);
$responseOffer = $exi->callRequestOffer(
    [
        'firstname'   => 'Hans',
        'lastname'    => 'Mustermann',
        'street'      => 'Musteratr. 8',
        'zip'         => '12345',
        'city'        => 'Münchhausen',
        'countryCode' => 'DEU',
        'email'       => 'test@test.de'
    ],
    [
        'countryCode' => 'AUT',
        'fromDate'    => '2018-09-01',
        'endDate'     => '2018-09-02',
        'bookingDate' => '2018-07-19',
        'isFlight'    => true,
        'totalPrice'  => 1250.00,
    ],
    [
        [
            'firstname' => 'Hans',
            'lastname'  => 'Mustermann',
            'birthday'  => '1972-06-20',
            'price'     => 625.00
        ]
    ]
);

Example without using Symfony framework.

Look at test.php, (*9)

Release notes

release_v9
New amazonPayment
New apAmount
New apPaymentType
New amazonPayment
New ClientTypeType
New creditcardHolderType
New initiatorType
New payPageData
New payPageUrl
New psd2ParameterType
New requestPayPageUrl
New responsePayPageUrl
acceptedPayments: + amazonPayment
agentType: + initiator default 'CUSTOMER'
ccPaymentType: + psd2Parameter, + ccPayPageHandleId
customerType: streetAndNr length 100
paymentMethodType: + ap/AP
paymentType: + amazonPay
servicePremium: anonymous length 75
serviceRenewalPremium: anonymous length 77

The Versions

20/07 2018

dev-master

9999999-dev

  Sources   Download

MIT

The Requires

 

by Stephan Wörner

19/07 2018

v1.2

1.2.0.0

  Sources   Download

MIT

The Requires

 

by Stephan Wörner

19/07 2018

v1.0

1.0.0.0

  Sources   Download

MIT

The Requires

 

by Stephan Wörner