<?php
namespace Faker\Provider\fr_CH;
class Address extends \Faker\Provider\fr_FR\Address
{
protected static $buildingNumber = ['%##', '%#', '%', '#a', '#b', '#c'];
protected static $streetPrefix = ['Rue', 'Rue', 'Chemin', 'Avenue', 'Boulevard', 'Place', 'Impasse'];
protected static $postcode = ['####'];
/**
* @see https://fr.wikipedia.org/wiki/Villes_de_Suisse
*/
protected static $cityNames = [
'Aarau', 'Aarberg', 'Aarburg', 'Agno', 'Aigle VD', 'Altdorf', 'Altstätten', 'Appenzell', 'Arbon', 'Ascona', 'Aubonne', 'Avenches',
'Baden', 'Bad Zurzach', 'Bâle', 'Bellinzone', 'Berne', 'Beromünster', 'Berthoud', 'Biasca', 'Bienne', 'Bischofszell', 'Boudry', 'Bourg-Saint-Pierre', 'Bremgarten AG', 'Brigue', 'Brugg', 'Bulle', 'Bülach',
'Cerlier', 'Châtel-Saint-Denis',
'Coire', 'Conthey', 'Coppet', 'Cossonay', 'Croglio', 'Cudrefin', 'Cully',
'Delémont', 'Diessenhofen', 'Échallens', 'Eglisau', 'Elgg', 'Estavayer-le-Lac',
'Frauenfeld', 'Fribourg',
'Genève', 'Glaris', 'Gordola', 'Grandcour', 'Grandson', 'Greifensee', 'Grüningen', 'Gruyères',
'Hermance', 'Huttwil',
'Ilanz',
'Kaiserstuhl', 'Klingnau',
'La Chaux-de-Fonds', 'La Neuveville', 'La Sarraz', 'La Tour-de-Peilz', 'La Tour-de-Trême', 'Le Landeron', 'Les Clées', 'Lachen', 'Langenthal', 'Laufon', 'Laufenburg', 'Laupen', 'Lausanne', 'Lenzburg', 'Loèche', 'Lichtensteig', 'Liestal', 'Locarno', 'Losone', 'Lugano', 'Lutry', 'Lucerne',
'Maienfeld', 'Martigny', 'Mellingen', 'Mendrisio', 'Monthey', 'Morat', 'Morcote', 'Morges', 'Moudon', 'Moutier', 'Münchenstein',
'Neuchâtel', 'Neunkirch', 'Nidau', 'Nyon',
'Olten', 'Orbe', 'Orsières',
'Payerne', 'Porrentruy',
'Rapperswil', 'Regensberg', 'Rheinau', 'Rheineck', 'Rheinfelden', 'Riva San Vitale', 'Rolle', 'Romainmôtier', 'Romont FR', 'Rorschach', 'Rue',
'Saillon', 'Saint-Maurice', 'Saint-Prex', 'Saint-Ursanne', 'Sala', 'Saint-Gall', 'Sargans', 'Sarnen', 'Schaffhouse', 'Schwytz', 'Sembrancher', 'Sempach', 'Sion', 'Soleure', 'Splügen', 'Stans', 'Steckborn', 'Stein am Rhein', 'Sursee',
'Thoune', 'Thusis',
'Unterseen', 'Uznach',
'Valangin', 'Vevey', 'Villeneuve', 'Viège',
'Waldenburg', 'Walenstadt', 'Wangen an der Aare', 'Werdenberg', 'Wiedlisbach', 'Wil', 'Willisau', 'Winterthour',
'Yverdon-les-Bains',
'Zofingue', 'Zoug', 'Zurich',
];
/**
* @see https://fr.wikipedia.org/wiki/Canton_suisse
*/
protected static $canton = [
['AG' => 'Argovie'],
['AI' => 'Appenzell Rhodes-Intérieures'],
['AR' => 'Appenzell Rhodes-Extérieures'],
['BE' => 'Berne'],
['BL' => 'Bâle-Campagne'],
['BS' => 'Bâle-Ville'],
['FR' => 'Fribourg'],
['GE' => 'Genève'],
['GL' => 'Glaris'],
['GR' => 'Grisons'],
['JU' => 'Jura'],
['LU' => 'Lucerne'],
['NE' => 'Neuchâtel'],
['NW' => 'Nidwald'],
['OW' => 'Obwald'],
['SG' => 'Saint-Gall'],
['SH' => 'Schaffhouse'],
['SO' => 'Soleure'],
['SZ' => 'Schwytz'],
['TG' => 'Thurgovie'],
['TI' => 'Tessin'],
['UR' => 'Uri'],
['VD' => 'Vaud'],
['VS' => 'Valais'],
['ZG' => 'Zoug'],
['ZH' => 'Zurich'],
];
protected static $cityFormats = [
'{{cityName}}',
];
protected static $streetNameFormats = [
'{{streetPrefix}} {{lastName}}',
'{{streetPrefix}} de {{cityName}}',
'{{streetPrefix}} de {{lastName}}',
];
protected static $streetAddressFormats = [
'{{streetName}} {{buildingNumber}}',
];
protected static $addressFormats = [
"{{streetAddress}}\n{{postcode}} {{city}}",
];
/**
* Returns a random street prefix
*
* @example Rue
*
* @return string
*/
public static function streetPrefix()
{
return static::randomElement(static::$streetPrefix);
}
/**
* Returns a random city name.
*
* @example Luzern
*
* @return string
*/
public function cityName()
{
return static::randomElement(static::$cityNames);
}
/**
* Returns a canton
*
* @example array('BE' => 'Bern')
*
* @return array
*/
public static function canton()
{
return static::randomElement(static::$canton);
}
/**
* Returns the abbreviation of a canton.
*
* @return string
*/
public static function cantonShort()
{
$canton = static::canton();
return key($canton);
}
/**
* Returns the name of canton.
*
* @return string
*/
public static function cantonName()
{
$canton = static::canton();
return current($canton);
}
}
Get access token to initiates payment transaction.
generate-token
| Parameter | Type | Comments |
|---|---|---|
| client_id | string | Enter merchant API client/primary key |
| secret_id | string | Enter merchant API secret key |
| env | string | Enter merchant API environment |
| merchant_id | string | Enter merchant API merchant id |
Request Example (guzzle)
<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('POST', $base_url. 'v1/generate-token', [
'headers' => [
'accept' => 'application/json',
'content-type' => 'application/json',
],
'form_params' => [
'client_id' => '$client_id',
'secret_id' => 'secret_id',
'env' => 'env',
'merchant_id' => 'merchant_id',
],
]);
echo $response->getBody();
**Response: SUCCESS (200 OK)**
{
"message": {
"success": [
"Successfully token is generated"
]
},
"data": {
"token":"eyJpdiI6InpkczhjTjhQdVhUL2lKQ0pSUUx6aUE9PSIsInZhbHVlIjoiVGVBTVBDTXltbjNZcEIvdEJveGpTSno3TU5NRUtnVkhCZ1pHTFNCUnZGQ2UxMnYxN202cEE1YVRDTEFsc0ZERExoTjdtL0dTL2xoU3QzeUJJOExiMUx5T0w1L0llUXhTUkU1cWVLWEdEbEplb0dKNXcwbTNRM0VxdkUwYzZuNFdtNkhMQ0pRZysyNWkvdzBxSlBoSVBSOGFTekNnR2RXNHVtcG9lMGZOTmNCcm1hR3c5Sk9KTnB4Y3ltZDl6cm90MThrR21Ca3B1azc3bXRiQ0J6SW96UVo1elNkU1ZqeE05bTcwWGp1MEUxWlJFdnNWTmpSbnVpeW92b2U4dXZkUGgyb1VmK0luaGdyaFlsVTZlcVpVRnZlTG1DeFF6Ykk2T2h6Z3JzbnIyNHpNdHowSE5JdDR0Y0pZT20zUm1XYW8iLCJtYWMiOiJlY2M4NGE1OGUzYzkzYzk0YzljNmVmNjE0YWI0ZDIwOGI3NDQ2YWEyY2ZhNzc0NzE4ZmY1ZmYyMz
IyZmQzNDY1IiwidGFnIjoiIn0=",
},
"type": "success"
}
**Response: ERROR (400 FAILED)**
{
"message": {
"error": [
"Invalid credentials."
]
},
"data": null,
"type": "error"
}