简体   繁体   中英

Paypal pass custom variable to subscription button

I am trying to figure out how to pass custom variable when applies for a subscription for the webservice I have created; So far my code on front end looks like this:

const createSubscription = (data, actions) => {
    return actions.subscription.create({
        'plan_id': 'P-XXXXXXXXXXX',
        "custom": "This is data from custom field",
        "custom_id": "This is data from custom_id field"
    });
};

But when my client is approved, IPN sends notification to my back end server, there is no field of custom_id or custom at all:

{
  mc_gross: '100.00',
  outstanding_balance: '0.00',
  period_type: ' Regular',
  next_payment_date: '03:00:00 Mar 17, 2021 PDT',
  protection_eligibility: 'Eligible',
  payment_cycle: 'Monthly',
  address_status: 'confirmed',
  tax: '0.00',
  payer_id: 'HXRWYDXHYFZN8',
  address_street: '1 Main St',
  payment_date: '10:45:14 Feb 17, 2021 PST',
  payment_status: 'Completed',
  product_name: 'Monthly Plan',
  charset: 'UTF-8',
  recurring_payment_id: 'I-F2C2YTJU2E1U',
  address_zip: '95131',
  first_name: 'John',
  mc_fee: '3.20',
  address_country_code: 'US',
  address_name: 'John Doe',
  notify_version: '3.9',
  amount_per_cycle: '100.00',
  payer_status: 'verified',
  currency_code: 'USD',
  business: 'sb-w7647v5112246@business.example.com',
  address_country: 'United States',
  address_city: 'San Jose',
  verify_sign: 'AwvhmU0vP2FlU28Jc6pBhDPQLGvKAuK1SbOO3rAWZruMDt8v8SJ',
  payer_email: 'sb-oettb5109886@personal.example.com',
  initial_payment_amount: '0.00',
  profile_status: 'Active',
  amount: '100.00',
  txn_id: '7M8958705N109551P',
  payment_type: 'instant',
  last_name: 'Doe',
  address_state: 'CA',
  receiver_email: 'sb-w7647v5112246@business.example.com',
  payment_fee: '3.20',
  receiver_id: '5CCP2BYDNEBQE',
  txn_type: 'recurring_payment',
  mc_currency: 'USD',
  residence_country: 'US',
  test_ipn: '1',
  transaction_subject: 'Monthly Plan',
  payment_gross: '100.00',
  shipping: '0.00',
  product_type: '1',
  time_created: '10:44:22 Feb 17, 2021 PST',
  ipn_track_id: 'bee6f9133b8f'
}

Is there any way to pass some extra information so that I could update record on my backend?

PS. Please pay attention, this is createSubscription not createOrder or something like that.

  1. custom_id is the correct value

  2. It's possible you will only receive it in webhook event notifications , rather than IPN (which is a very old service and not intended to be used with current APIs)

  3. The best solution would be to create and activate the subscription from your server. The answer here and other answers it links to have some information.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM