Skip to content

Instantly share code, notes, and snippets.

Ivan Andreev vanbo

Block or report user

Report or block vanbo

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@vanbo
vanbo / wc-trustcommerce-modify-token-payment-request
Created Aug 20, 2019
WooCommerce TrustCommerce Modify Token Payment Request
View wc-trustcommerce-modify-token-payment-request
add_filter( 'wc_trustcommerce_process_profile_payment_request_request', 'prefix_modify_token_payment_request', 10, 3 );
/**
* @param array $request
* @param WC_Order $order
* @param $gateway
*
* @return mixed
*/
function prefix_modify_token_payment_request( $request, $order, $gateway ) {
@vanbo
vanbo / wc-paysafe-hosted-api-response-actions
Created Aug 9, 2019
WooCommerce Paysafe Hosted API Response Actions
View wc-paysafe-hosted-api-response-actions
/**
* Response actions
*
* do_action( 'wc_paysafe_payment_response_processed', $order, $response );
* do_action( 'wc_paysafe_redirect_hosted_response_processed', $response, $this, $order );
* do_action( 'wc_paysafe_redirect_hosted_declined_response_processed', $response, $this, $order );
* do_action( 'wc_paysafe_redirect_hosted_cancelled_response_processed', $response, $this, $order );
* do_action( 'wc_paysafe_redirect_hosted_errored_response_processed', $response, $this, $order );
* do_action( 'wc_paysafe_redirect_hosted_pending_response_processed', $response, $this, $order );
* do_action( 'wc_paysafe_redirect_hosted_settlement_response_processed', $response, $this, $order );
@vanbo
vanbo / wc-paysafe-checkoutjs-dynamic-account-id
Last active Aug 12, 2019
WooCommerce Paysafe Checkout API Dynamic Account ID
View wc-paysafe-checkoutjs-dynamic-account-id
/**
* Add the gist to your "theme/functions.php" file or any file loading with after the "theme/functions.php" file
*/
add_filter( 'wc_paysafe_checkoutjs_account_id', 'prefix_paysafe_checkout_api_account_id', 10, 3 );
/**
* @param string $account_id The default Account ID for the type
* @param \WcPaysafe\Api\Data_Sources\Order_Source|\WcPaysafe\Api\Data_Sources\User_Source $data_source
* @param string $payment_type The type of payment to be processed.
@vanbo
vanbo / wc-trustcommerce-modify-payment-request
Last active Aug 12, 2019
WooCommerce TrustCommerce Modify Payment Request
View wc-trustcommerce-modify-payment-request
add_filter( 'wc_trustcommerce_process_single_payment_request', 'prefix_modify_payment_request', 10, 3 );
function prefix_modify_payment_request( $request, $order, $gateway ) {
// You have access to all request properties right before a payment request is sent.
// Disable the AVS
if ( isset( $request['avs'] ) ) {
$request['avs'] = 'n';
}
@vanbo
vanbo / wc-psigate-add-order-request-xml-api
Created May 27, 2019
WooCommerce Psigate: Add Order details to XML API call
View wc-psigate-add-order-request-xml-api
add_filter( 'wc_psigate_process_credit_card_payment_parameters', 'prigate_xml_api_add_order_details', 11, 2 );
/**
* @param array $original_parameters
* @param WC_Order $order
*
* @return array
*/
function prigate_xml_api_add_order_details( $original_parameters, $order ) {
/**
@vanbo
vanbo / wc-paysafe-hosted-modify-payment-request
Last active Jul 11, 2019
WooCommerce Paysafe Hosted API - Modify Payment Request
View wc-paysafe-hosted-modify-payment-request
/**
* IMPORTANT: The filters only work for the Paysafe Hosted Payments API integration.
* Other integrations like Paysafe Checkout JS will have separate filters for the requests
*/
// Normal order
add_filter( 'wc_paysafe_request_params', 'prefix_paysafe_modify_request', 10, 2 );
// Subscriptions/Pre-Orders order
add_filter( 'wc_paysafe_addons_request_params', 'prefix_paysafe_modify_request', 10, 2 );
@vanbo
vanbo / wc-ipay88-change-description
Last active Feb 28, 2019
WooCommerce iPay88 change description
View wc-ipay88-change-description
add_filter( 'wc_ipay88_order_description', 'prefix_change_ipay88_payment_description', 10, 2 );
/**
* @param $desc
* @param WC_Order $order
*
* @return string
*/
function prefix_change_ipay88_payment_description( $desc, $order ) {
return sprintf( 'Payment for order %s', $order->get_order_number() );
}
@vanbo
vanbo / wc-paysafe-custom-redirect-url
Created Feb 25, 2019
WC Paysafe Custom redirect url
View wc-paysafe-custom-redirect-url
add_filter( 'wc_paysafe_payment_customer_redirect_url', 'prefix_custom_redirect_url', 10, 3 );
function prefix_custom_redirect_url( $url, $status, $order_id ) {
/**
* $status possible values are:
* 'success',
* 'error',
* 'hold',
* 'timeout',
* 'decline',
*/
@vanbo
vanbo / wc-virtual-downloadable-item-needs-processing
Created Nov 30, 2018
WooCommerce Orders with virtual and downloadable products need processing
View wc-virtual-downloadable-item-needs-processing
/**
* Orders containing virtual or processing products only will be set to Completed essentially skipping the Processing status.
* If you need those orders to first be set to Processing:
* 1. Use the code below to have WooCommerce mark the order as Processing
* 2. Go to WooCommerce > Settings > Products > Downloadable Products > Uncheck the checkbox "Grant access to downloadable products after payment" > Save
*
* This process will mark the orders as Processing and wait until the order is in Completed status before grants a download access
*/
add_action( 'woocommerce_order_item_needs_processing', 'prefix_item_need_processing', 10, 3 );
function prefix_item_need_processing( $needs_procesing, $product, $order_id ) {
@vanbo
vanbo / borica-fire-ipn-hook
Created Nov 13, 2018
Borica fire a hook after Borica Payment Response(IPN)
View borica-fire-ipn-hook
/**
* @param WC_Order $order
* @param string $response_code The transaction response code. Possible values are:
* 00 - Successful transaction
* 85 - Reversal Transaction already registered
* 86 - Transaction already registered
* 87 - Wrong protocol version
* 88 - BOReq parameter is not given
* 89 - Original transaction is not found.
* 90 - Card is not registered in the Directory Server
You can’t perform that action at this time.