:doc:`Invoicing <../../invoicing>` / Client / get_procurement_portal_preference

*********************************
get_procurement_portal_preference
*********************************



.. py:method:: Invoicing.Client.get_procurement_portal_preference(**kwargs)

  

  Retrieves the details of a specific procurement portal preference configuration.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/invoicing-2024-12-01/GetProcurementPortalPreference>`_  


  **Request Syntax**
  ::

    response = client.get_procurement_portal_preference(
        ProcurementPortalPreferenceArn='string'
    )
    
  :type ProcurementPortalPreferenceArn: string
  :param ProcurementPortalPreferenceArn: **[REQUIRED]** 

    The Amazon Resource Name (ARN) of the procurement portal preference to retrieve.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'ProcurementPortalPreference': {
              'AwsAccountId': 'string',
              'ProcurementPortalPreferenceArn': 'string',
              'ProcurementPortalName': 'SAP_BUSINESS_NETWORK'|'COUPA',
              'BuyerDomain': 'NetworkID',
              'BuyerIdentifier': 'string',
              'SupplierDomain': 'NetworkID',
              'SupplierIdentifier': 'string',
              'Selector': {
                  'InvoiceUnitArns': [
                      'string',
                  ],
                  'SellerOfRecords': [
                      'string',
                  ]
              },
              'ProcurementPortalSharedSecret': 'string',
              'ProcurementPortalInstanceEndpoint': 'string',
              'PurchaseOrderRetrievalEndpoint': 'string',
              'TestEnvPreference': {
                  'BuyerDomain': 'NetworkID',
                  'BuyerIdentifier': 'string',
                  'SupplierDomain': 'NetworkID',
                  'SupplierIdentifier': 'string',
                  'ProcurementPortalSharedSecret': 'string',
                  'ProcurementPortalInstanceEndpoint': 'string',
                  'PurchaseOrderRetrievalEndpoint': 'string'
              },
              'EinvoiceDeliveryEnabled': True|False,
              'EinvoiceDeliveryPreference': {
                  'EinvoiceDeliveryDocumentTypes': [
                      'AWS_CLOUD_INVOICE'|'AWS_CLOUD_CREDIT_MEMO'|'AWS_MARKETPLACE_INVOICE'|'AWS_MARKETPLACE_CREDIT_MEMO'|'AWS_REQUEST_FOR_PAYMENT',
                  ],
                  'EinvoiceDeliveryAttachmentTypes': [
                      'INVOICE_PDF'|'RFP_PDF',
                  ],
                  'Protocol': 'CXML',
                  'PurchaseOrderDataSources': [
                      {
                          'EinvoiceDeliveryDocumentType': 'AWS_CLOUD_INVOICE'|'AWS_CLOUD_CREDIT_MEMO'|'AWS_MARKETPLACE_INVOICE'|'AWS_MARKETPLACE_CREDIT_MEMO'|'AWS_REQUEST_FOR_PAYMENT',
                          'PurchaseOrderDataSourceType': 'ASSOCIATED_PURCHASE_ORDER_REQUIRED'|'PURCHASE_ORDER_NOT_REQUIRED'
                      },
                  ],
                  'ConnectionTestingMethod': 'PROD_ENV_DOLLAR_TEST'|'TEST_ENV_REPLAY_TEST',
                  'EinvoiceDeliveryActivationDate': datetime(2015, 1, 1)
              },
              'PurchaseOrderRetrievalEnabled': True|False,
              'Contacts': [
                  {
                      'Name': 'string',
                      'Email': 'string'
                  },
              ],
              'EinvoiceDeliveryPreferenceStatus': 'PENDING_VERIFICATION'|'TEST_INITIALIZED'|'TEST_INITIALIZATION_FAILED'|'TEST_FAILED'|'ACTIVE'|'SUSPENDED',
              'EinvoiceDeliveryPreferenceStatusReason': 'string',
              'PurchaseOrderRetrievalPreferenceStatus': 'PENDING_VERIFICATION'|'TEST_INITIALIZED'|'TEST_INITIALIZATION_FAILED'|'TEST_FAILED'|'ACTIVE'|'SUSPENDED',
              'PurchaseOrderRetrievalPreferenceStatusReason': 'string',
              'Version': 123,
              'CreateDate': datetime(2015, 1, 1),
              'LastUpdateDate': datetime(2015, 1, 1)
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **ProcurementPortalPreference** *(dict) --* 

        The detailed configuration of the requested procurement portal preference.

        
        

        - **AwsAccountId** *(string) --* 

          The Amazon Web Services account ID associated with this procurement portal preference.

          
        

        - **ProcurementPortalPreferenceArn** *(string) --* 

          The Amazon Resource Name (ARN) of the procurement portal preference.

          
        

        - **ProcurementPortalName** *(string) --* 

          The name of the procurement portal.

          
        

        - **BuyerDomain** *(string) --* 

          The domain identifier for the buyer in the procurement portal.

          
        

        - **BuyerIdentifier** *(string) --* 

          The unique identifier for the buyer in the procurement portal.

          
        

        - **SupplierDomain** *(string) --* 

          The domain identifier for the supplier in the procurement portal.

          
        

        - **SupplierIdentifier** *(string) --* 

          The unique identifier for the supplier in the procurement portal.

          
        

        - **Selector** *(dict) --* 

          Specifies criteria for selecting which invoices should be processed using a particular procurement portal preference.

          
          

          - **InvoiceUnitArns** *(list) --* 

            The Amazon Resource Name (ARN) of invoice unit identifiers to which this preference applies.

            
            

            - *(string) --* 
        
          

          - **SellerOfRecords** *(list) --* 

            The list of seller of record IDs to which this preference applies.

            
            

            - *(string) --* 
        
      
        

        - **ProcurementPortalSharedSecret** *(string) --* 

          The shared secret or authentication credential used for secure communication with the procurement portal.

          
        

        - **ProcurementPortalInstanceEndpoint** *(string) --* 

          The endpoint URL where e-invoices are delivered to the procurement portal.

          
        

        - **PurchaseOrderRetrievalEndpoint** *(string) --* 

          The endpoint URL used for retrieving purchase orders from the procurement portal.

          
        

        - **TestEnvPreference** *(dict) --* 

          Configuration on settings for the test environment of the procurement portal.

          
          

          - **BuyerDomain** *(string) --* 

            The domain identifier for the buyer in the test environment of the procurement portal.

            
          

          - **BuyerIdentifier** *(string) --* 

            The unique identifier for the buyer in the test environment of the procurement portal.

            
          

          - **SupplierDomain** *(string) --* 

            The domain identifier for the supplier in the test environment of the procurement portal.

            
          

          - **SupplierIdentifier** *(string) --* 

            The unique identifier for the supplier in the test environment of the procurement portal.

            
          

          - **ProcurementPortalSharedSecret** *(string) --* 

            The shared secret or authentication credential used for secure communication with the test environment.

            
          

          - **ProcurementPortalInstanceEndpoint** *(string) --* 

            The endpoint URL where e-invoices are delivered in the test environment.

            
          

          - **PurchaseOrderRetrievalEndpoint** *(string) --* 

            The endpoint URL used for retrieving purchase orders in the test environment.

            
      
        

        - **EinvoiceDeliveryEnabled** *(boolean) --* 

          Indicates whether e-invoice delivery is enabled for this procurement portal preference.

          
        

        - **EinvoiceDeliveryPreference** *(dict) --* 

          The configuration settings that specify how e-invoices are delivered to the procurement portal.

          
          

          - **EinvoiceDeliveryDocumentTypes** *(list) --* 

            The types of e-invoice documents to be delivered.

            
            

            - *(string) --* 
        
          

          - **EinvoiceDeliveryAttachmentTypes** *(list) --* 

            The types of attachments to include with the e-invoice delivery.

            
            

            - *(string) --* 
        
          

          - **Protocol** *(string) --* 

            The communication protocol to use for e-invoice delivery.

            
          

          - **PurchaseOrderDataSources** *(list) --* 

            The sources of purchase order data to use for e-invoice generation and delivery.

            
            

            - *(dict) --* 

              Specifies the source configuration for retrieving purchase order data.

              
              

              - **EinvoiceDeliveryDocumentType** *(string) --* 

                The type of e-invoice document that requires purchase order data.

                
              

              - **PurchaseOrderDataSourceType** *(string) --* 

                The type of source for purchase order data.

                
          
        
          

          - **ConnectionTestingMethod** *(string) --* 

            The method to use for testing the connection to the procurement portal.

            
          

          - **EinvoiceDeliveryActivationDate** *(datetime) --* 

            The date when e-invoice delivery should be activated for this preference.

            
      
        

        - **PurchaseOrderRetrievalEnabled** *(boolean) --* 

          Indicates whether purchase order retrieval is enabled for this procurement portal preference.

          
        

        - **Contacts** *(list) --* 

          List of contact information for portal administrators and technical contacts.

          
          

          - *(dict) --* 

            Represents contact information for a person or role associated with the procurement portal preference.

            
            

            - **Name** *(string) --* 

              The name of the contact person or role.

              
            

            - **Email** *(string) --* 

              The email address of the contact person or role.

              
        
      
        

        - **EinvoiceDeliveryPreferenceStatus** *(string) --* 

          The current status of the e-invoice delivery preference.

          
        

        - **EinvoiceDeliveryPreferenceStatusReason** *(string) --* 

          The reason for the current e-invoice delivery preference status.

          
        

        - **PurchaseOrderRetrievalPreferenceStatus** *(string) --* 

          The current status of the purchase order retrieval preference.

          
        

        - **PurchaseOrderRetrievalPreferenceStatusReason** *(string) --* 

          The reason for the current purchase order retrieval preference status.

          
        

        - **Version** *(integer) --* 

          The version number of the procurement portal preference configuration.

          
        

        - **CreateDate** *(datetime) --* 

          The date and time when the procurement portal preference was created.

          
        

        - **LastUpdateDate** *(datetime) --* 

          The date and time when the procurement portal preference was last updated.

          
    
  
  **Exceptions**
  
  *   :py:class:`Invoicing.Client.exceptions.ResourceNotFoundException`

  
  *   :py:class:`Invoicing.Client.exceptions.ConflictException`

  
  *   :py:class:`Invoicing.Client.exceptions.ValidationException`

  
  *   :py:class:`Invoicing.Client.exceptions.InternalServerException`

  
  *   :py:class:`Invoicing.Client.exceptions.ServiceQuotaExceededException`

  
  *   :py:class:`Invoicing.Client.exceptions.ThrottlingException`

  
  *   :py:class:`Invoicing.Client.exceptions.AccessDeniedException`

  