I have added a custom field on checkout in shipping address section using below code.


<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    <type name="Magento\Checkout\Block\Checkout\LayoutProcessor">
        <plugin name="ProcessAddressConfiguration" type="Vendor\Module\Block\Checkout\PassportProcessor"/>


namespace Vendor\Module\Block\Checkout;

class PassportProcessor
    public function afterProcess(\Magento\Checkout\Block\Checkout\LayoutProcessor $processor, $jsLayout){

        $passport_no = 'passport_no';

        $newField = [
            'component' => 'Magento_Ui/js/form/element/abstract',
            'config' => [
                'customScope' => 'shippingAddress.custom_attributes',
                'customEntry' => null,
                'template' => 'ui/form/field',
                'elementTmpl' => 'ui/form/element/input',
                'tooltip' => [
                    'description' => 'description'
            'dataScope' => 'shippingAddress.custom_attributes.' . $passport_no,
            'label' => 'Passport Number',
            'provider' => 'checkoutProvider',
            'sortOrder' => 0,
            'validation' => [
                'required-entry' => true
            'options' => [],
            'filterBy' => null,
            'customEntry' => null,
            'visible' => true

        $jsLayout['components']['checkout']['children']['steps']['children']['shipping-step']['children']['shippingAddress']['children']['shipping-address-fieldset']['children'][$passport_no] = $newField;

        return $jsLayout;


  • In which tables I should save it so that when I pull the order, passport_no should be available in shipping address section of that order?
  • How I can save passport_no in those tables from here?

I went through multiple posts but I do not see a complete list of steps which should be taken to achieve it.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.