web-dev-qa-db-ja.com

WooCommerce:WebhookにPayment Gatewayフィールドを追加する

私たちがセットアップした特別なEFTシステム用のカスタム支払いゲートウェイを作成しました。銀行口座と回覧番号は暗号化された後、WooCommerceウェブフックを介してSalesforceに送信され、処理されます。

残念ながら、Order Webhookの広告申込情報として銀行番号と回覧番号を追加する方法はわかりません。私はそれらをWebhookの製品ラインに追加することができました、しかしそれは役に立ちません、なぜならそれはすべての製品が配列に銀行番号とルーティング番号を持っているときWebhookを面倒にするからです。私はすべてのフックとフィルタについて試してみたような気がします、そして私は他の支払いゲートウェイのフックとフィルタを調べようとしました、そして私はそれを理解することができませんでした。

支払いゲートウェイのフィールドをOrder Webhooksにフックする方法についての手がかりはありますか?

1
lawdawg

ありがとう、次回はします。私はこれを考え出しました:

function my_custom_wc_api_order_response( $order_data, $order, $fields ) {
  $customer_info = get_post_meta( $order->id, '_customer_info', true );

  $order_data['payment_details']['customer_info'] = $customer_info;

  // Apply filters if necessary
  if ( $fields ) {
    $order_data = WC()->api->WC_API_Customers->filter_response_fields( $order_data, $order, $fields );
  }

  return $order_data;
}

add_filter( 'woocommerce_api_order_response', 'my_custom_wc_api_order_response', 10, 3 );
3
lawdawg