Přeskočit na obsah

Upravení dat subjektu (kontaktu)

Tento obsah zatím není dostupný ve vašem jazyce.

Pokud potřebujete upravit data odesílaná do Fakturoidu za účelem vytvoření kontaktu můžete k tomu využít připravený filtr.

apply_filters( 'wpify_woo_fakturoid_subject_data', $data, $order, $wc_order );
ParametrTypPopis
$dataarrayData kontaktu k odeslání
$orderOrderModelModel objednávky s Fakturoid daty
$wc_orderWC_OrderWooCommerce objednávka
$data = array(
'name' // Fakturační jméno společnosti nebo celé jméno
'full_name' // Fakturační celé jméno
'street' // Fakturační ulice a číslo popisné
'city' // Fakturační město
'zip' // Fakturační PSČ
'country' // Fakturační země (kód země, např. CZ, SK)
'registration_no' // Fakturační IČO
'vat_no' // Fakturační DIČ
'local_vat_no' // Fakturační IČ DPH (pro SR)
'email' // Fakturační email
'phone' // Fakturační telefon
);

Pokud má objednávka vyplněnou doručovací adresu, přidávají se následující pole:

$data += array(
'has_delivery_address' // true pokud existuje doručovací adresa
'delivery_name' // Jméno/firma na doručovací adrese
'delivery_street' // Ulice doručovací adresy
'delivery_city' // Město doručovací adresy
'delivery_zip' // PSČ doručovací adresy
'delivery_country' // Země doručovací adresy (kód země)
);

Ve výchozím stavu se obě adresy (address_1 a address_2) spojují do jednoho pole street. Tento filtr použijte pokud chcete adresu rozdělit.

/**
* Edit Fakturoid subject data - split address
*
* @param array $data Data
* @param OrderModel $order Order model with Fakturoid data
* @param WC_Order $wc_order WC order
*
* @return array
*/
function edit_fakturoid_subject_data( $data, $order, $wc_order ): array {
$data['street'] = $wc_order->get_billing_address_1();
$data['street2'] = $wc_order->get_billing_address_2();
return $data;
}
add_filter( 'wpify_woo_fakturoid_subject_data', 'edit_fakturoid_subject_data', 10, 3 );

Ve výchozím stavu se custom_id nenastavuje. Tento filtr použijte pro propojení kontaktů mezi WooCommerce a Fakturoidem.

/**
* Add custom customer ID to subject data
*
* @param array $data Data
* @param OrderModel $order Order model
* @param WC_Order $wc_order WC order
*
* @return array
*/
function add_custom_id_to_subject( $data, $order, $wc_order ): array {
if ( $wc_order->get_customer_id() ) {
$data['custom_id'] = $wc_order->get_customer_id();
}
return $data;
}
add_filter( 'wpify_woo_fakturoid_subject_data', 'add_custom_id_to_subject', 10, 3 );

Ve výchozím stavu se jako name použije název firmy (pokud je vyplněn), jinak celé jméno zákazníka.

/**
* Modify subject name format
*
* @param array $data Data
* @param OrderModel $order Order model
* @param WC_Order $wc_order WC order
*
* @return array
*/
function modify_subject_name( $data, $order, $wc_order ): array {
// Vždy použít celé jméno, i když je vyplněna firma
$data['name'] = $wc_order->get_formatted_billing_full_name();
return $data;
}
add_filter( 'wpify_woo_fakturoid_subject_data', 'modify_subject_name', 10, 3 );
/**
* Add additional fields to subject
*
* @param array $data Data
* @param OrderModel $order Order model
* @param WC_Order $wc_order WC order
*
* @return array
*/
function add_subject_fields( $data, $order, $wc_order ): array {
// Přidat webovou stránku z custom pole
$website = $wc_order->get_meta( '_billing_website' );
if ( $website ) {
$data['web'] = $website;
}
// Přidat poznámku
$data['note'] = 'Vytvořeno z WooCommerce objednávky #' . $wc_order->get_order_number();
return $data;
}
add_filter( 'wpify_woo_fakturoid_subject_data', 'add_subject_fields', 10, 3 );

Pokud používáte plugin WooCommerce EU VAT Number nebo podobný, můžete DIČ získat a předat do Fakturoidu:

/**
* Get VAT number from EU VAT plugin
*
* @param array $data Data
* @param OrderModel $order Order model
* @param WC_Order $wc_order WC order
*
* @return array
*/
function add_eu_vat_to_subject( $data, $order, $wc_order ): array {
// Pro plugin WooCommerce EU VAT Number
if ( function_exists( 'wc_eu_vat_get_vat_from_order' ) ) {
$vat_no = wc_eu_vat_get_vat_from_order( $wc_order );
if ( $vat_no ) {
$data['vat_no'] = $vat_no;
}
}
return $data;
}
add_filter( 'wpify_woo_fakturoid_subject_data', 'add_eu_vat_to_subject', 10, 3 );

Přidání IČ DPH pro Slovensko (local_vat_no)

Section titled “Přidání IČ DPH pro Slovensko (local_vat_no)”

Pro slovenské zákazníky je potřeba vyplnit pole local_vat_no (IČ DPH):

/**
* Add Slovak VAT ID (IČ DPH) to subject
*
* @param array $data Data
* @param OrderModel $order Order model
* @param WC_Order $wc_order WC order
*
* @return array
*/
function add_slovak_vat_id( $data, $order, $wc_order ): array {
// Získat IČ DPH z custom pole objednávky
$ic_dph = $wc_order->get_meta( '_billing_ic_dph' );
if ( $ic_dph && $wc_order->get_billing_country() === 'SK' ) {
$data['local_vat_no'] = $ic_dph;
}
return $data;
}
add_filter( 'wpify_woo_fakturoid_subject_data', 'add_slovak_vat_id', 10, 3 );

Vlastní funkci můžete vložit buď do tzv. child šablony nebo pomocí pluginu Code Snippets.