우커머스 쇼핑몰에서 결제 후에 주문 상태를 '완료'로 변경하기

Last Updated: 2023년 11월 17일 | 댓글 남기기

우커머스 쇼핑몰에서 고객이 주문하고 결제하면 주문 상태가 기본적으로 '처리 중'으로 변경합니다. 그러면 고객은 해당 주문 건이 처리되고 있다는 사실을 알게 되므로 이러한 동작은 합리적인 것 같습니다. 하지만 네이버 카페에서 결제를 하면 자동으로 '완료'로 바뀌도록 하는 방법에 대한 문의가 있었습니다. 고객이 결제 시 주문 상태를 '완료'로 변경하고 싶은 경우 woocommerce_payment_complete 훅이나 플러그인을 사용할 수 있습니다.

woocommerce_payment_complete 훅을 사용하여 우커머스 쇼핑몰에서 결제 후에 주문 상태를 '완료'로 변경하기

우커머스 쇼핑몰에서는 일반적으로 사용자가 다운로드 상품을 주문하여 결제할 경우 주문 상태를 '완료'로 변경되고 물리적인 상품을 주문하여 결제하면 주문 상태가 '처리 중'으로 변경될 것입니다.

만약 고객이 성공적으로 결제를 완료하면 해당 주문의 상태를 '처리 중'이 아닌 '완료'로 자동으로 바뀌도록 하고 싶은 경우에는 다음과 같은 코드를 테마 함수 파일에 추가할 수 있습니다.

add_action( 'woocommerce_payment_complete', 'wpdesk_set_completed_for_paid_orders' );

function wpdesk_set_completed_for_paid_orders( $order_id ) {
    // Get the order object
    $order = wc_get_order( $order_id );

    // Check if the order exists and is not already completed
    if ( $order && 'completed' !== $order->get_status() ) {
        // Update the order status to completed
        $order->update_status( 'completed' );

        // Optional: Add a custom note or log the status change for debugging
        // $order->add_order_note( 'Order status changed to completed automatically.' );
        // error_log( 'Order ' . $order_id . ' status changed to completed.' );
    }
}

차일드 테마가 활성화되어 있지 않다면 차일드 테마를 만들어서 FTP에 접속하여 차일드 테마의 함수 파일(functions.php)에 위의 코드를 추가하시기 바랍니다. 테마 편집기를 사용하여 알림판에서 코드를 입력할 수도 있지만, 보안 강화를 위해 테마 편집기는 비활성화하는 것이 바람직할 수 있습니다.

우커머스 주문 자동 완료(Autocomplete WooCommerce Orders) 플러그인 사용하기

상기 코드를 테마 함수 파일에 추가하는 것에 어려움을 겪거나, 상기 코드가 작동하지 않는다면 플러그인을 사용하여 테스트할 수 있습니다.

이러한 기능을 하는 플러그인으로 Autocomplete WooCommerce Orders가 있습니다.

우커머스 주문 자동 완료(Autocomplete WooCommerce Orders) 플러그인 사용하기

이 플러그인은 무료 버전과 프리미엄 버전이 있으며 우커머스 2 및 3 이상의 버전과 호환되며 페이팔, Sagepay, Stripe 등 주요 PG와 작동한다고 합니다.

  • 가상 상품의 유료 주문건에만 해당: "가상 상품"만 포함된 주문은 결제가 성공하면 완료됨으로 바뀝니다.
  • 모든 상품의 유료 결제: 모든 상품(물리적 상품 포함)의 주문이 결제가 성공하는 즉시 "완료"로 전환됩니다.
  • 모든 주문: 결제 상태와 관계 없이 각 주문 및 모든 주문이 "완료"로 바뀌게 됩니다.

위와 같은 옵션이 제공되는 것 같습니다. 이 플러그인을 설치하고 활성화하면 우커머스 » 설정 페이지에 Autocomplete Orders 탭이 추가됩니다.

Mode에서 다음 옵션을 선택할 수 있습니다.

  • Off - 끄기
  • All Orders - 모든 주문
  • Virtual Orders - 가상 주문
  • Virtual & Downloadable Orders - 가상 & 다운로드 주문

예를 들어, 가상 및 다운로드 상품 주문에 대하여 결제 완료 시 주문 상태를 "완료"로 자동으로 전환하고 싶은 경우 "Virtual & Downloadable Orders"를 선택할 수 있습니다.

회색으로 표시된 옵션은 유료 버전에서만 제공되는 기능입니다.

비슷한 기능의 플러그인으로 Autocomplete Order Status for WooCommerce가 있지만 이 플러그인은 설치된 사이트 수가 100여 개로 저조한 편입니다.

우커머스 주문 상태 추가 플러그인

사용자가 상점에서 주문을 하면 상점 관리자가 해당 주문의 상태를 우커머스 » 주문 페이지에서 변경할 수 있습니다.

우커머스 상품 주문 상태

우커머스에서는 제공하는 주문 상태 이외의 다른 상태를 추가하고 싶은 경우 무료 또는 유료 플러그인을 사용할 수 있습니다.

참고


댓글 남기기

Leave a Comment