// install dependency
// $ composer require guzzlehttp/guzzle
<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$transaction = [
"type" => "PRODUCT_CATALOG",
"content" => [
"header" => [
"sender" => [
"identifiers" => [
[
"domain" => "GS1",
"identifier" => "4200000123456"
]
],
"postalAddress" => [
"name" => "Test Sender GmbH",
"street" => "Musterstraße 1",
"addressExtra" => "c/o Max Mustermann",
"city" => "Entenhausen",
"postalCode" => "123456",
"countryCode" => "DE"
],
"name" => "Test Sender GmbH"
],
"receiver" => [
"identifiers" => [
[
"domain" => "GS1",
"identifier" => "4200000654321"
]
],
"postalAddress" => [
"name" => "Test Receiver GmbH",
"street" => "Lilienstraße 36",
"city" => "Hamburg",
"postalCode" => "20095",
"countryCode" => "DE"
],
"name" => "Test Receiver GmbH"
],
"catalogNumber" => "Summer 2025",
"catalogDate" => "2024-06-01"
],
"items" => [
[
"unitOfMeasure" => "EA",
"identity" => [
"senderPartnerId" => "PRD-0001",
"receiverPartnerId" => "AB-MM-9988",
"gtin" => "12345678901234",
],
"lineNumber" => 12,
"quantity" => 5,
"action" => "NEW",
"currency" => "EUR",
"isOrderable" => true,
"unitPrice" => 44.23,
"description" => "Description/Name of the product",
"hsCode" => "222222",
"isDangerous" => false,
"hasExpiryDate" => false,
"hasBatchNumber" => false,
"hasSerialNumber" => false,
"originCountryCode" => "US"
]
]
]
];
$response = $client->request('POST', 'https://api.procuros.io/v2/transactions', [
'headers' => [
'Accept' => 'application/json',
'Authorization' => 'Bearer <your-api-token>',
],
'json' => $transaction,
]);