{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-guides/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["sub-heading","admonition"]},"type":"markdown"},"seo":{"title":"Troubleshooting","description":"Transform your commerce with PXP's unified platform—seamless payments, real-time insights, and global growth in one powerful integration.","lang":"en-UK","siteUrl":"https://developer.pxp.io","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"troubleshooting","__idx":0},"children":["Troubleshooting"]},{"$$mdtype":"Tag","name":"SubHeading","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Learn how to fix common issues with the payout components."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"common-issues","__idx":1},"children":["Common issues"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Issue"},"children":["Issue"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Next steps"},"children":["Next steps"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Payout button not rendering."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The submission button doesn't appear in the container."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Verify that the container ID exists in the DOM."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Check that ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["recipientWallet"]}," is specified (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Paypal"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Venmo"]},")."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Ensure that ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["paypalConfig"]}," is provided in SDK initialisation."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Confirm that the component is properly mounted."]}]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["\"PayPal configuration is required\" error."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["SDK throws ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SDK1000"]}," error on component creation."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Add ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["paypalConfig"]}," with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["payoutConfig"]}," to your SDK initialisation."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Ensure ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactionData.intent.paypal"]}," is set to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["IntentType.Payout"]},"."]}]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["\"Payer ID required\" error."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["SDK throws ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SDK0809"]}," error during payout submission."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["For returning customers: Ensure ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["paypalWallet.payerId"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["paypalWallet.email"]}," is provided."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Verify that ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["onAccountVerified"]}," callback stores the account details correctly."]}]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Venmo payout fails with currency error."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["SDK throws ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SDK0905"]}," error."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Venmo only supports USD currency."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Change ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactionData.currency"]}," to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"USD\""]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["For non-USD payouts, use PayPal instead of Venmo."]}]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Invalid email format error."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["SDK throws ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SDK0808"]}," error."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Verify the PayPal email is correctly formatted."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Check for leading/trailing whitespace in the email."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Ensure the email doesn't contain special characters that aren't valid."]}]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Invalid phone format error."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["SDK throws ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SDK0904"]}," for Venmo phone payouts."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Phone numbers must contain only numeric characters."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Remove dashes, spaces, and parentheses from the phone number."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Include the country code if required."]}]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Amount validation errors."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["SDK throws ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SDK0810"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SDK0811"]},", or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SDK0812"]},"."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Ensure ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactionData.amount"]}," is a positive number greater than zero."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Verify the amount is a valid numeric type (not a string)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Check that the amount is provided in the SDK configuration."]}]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Receiver masking not working."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Email/phone always shows masked or unmasked."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Check ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["showMaskToggle"]}," configuration."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["When ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["showMaskToggle"]}," is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},", verify ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["applyMask"]}," (PayPal) or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["applyEmailMask"]},"/",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["applyPhoneMask"]}," (Venmo) settings."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Note: Venmo handles (UserHandle) cannot be masked."]}]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Payout note too long warning."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["SDK logs a console warning about note length."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Notes longer than 4000 characters will be automatically truncated."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The note is provided via ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["onPrePayoutSubmit"]}," callback."]}]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["onPostPayout not being called."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Payout completes but callback doesn't fire."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Ensure ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["proceedPayoutWithSdk"]}," is set to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["When ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["proceedPayoutWithSdk"]}," is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},", the SDK doesn't execute the payout — your backend must handle it."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Check that ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["onPrePayoutSubmit"]}," returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{ isApproved: true }"]},"."]}]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Component styles not applying."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Custom styles are ignored."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Verify the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["styles"]}," object structure matches the expected format."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Check that CSS property names use camelCase (e.g., ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["backgroundColor"]}," not ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["background-color"]},")."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Ensure style values are strings (e.g., ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"16px\""]}," not ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["16"]},")."]}]}]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"sdk-initialisation-issues","__idx":2},"children":["SDK initialisation issues"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"missing-or-invalid-configuration","__idx":3},"children":["Missing or invalid configuration"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Ensure your SDK initialisation includes all required payout configuration:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"typescript","header":{"controls":{"copy":{}}},"source":"const pxpCheckoutSdk = PxpCheckout.initialize({\n  environment: \"test\",  // or \"production\"\n  session: sessionData,\n  ownerId: \"Unity\",\n  ownerType: \"MerchantGroup\",\n  transactionData: {\n    amount: 100,           // Required: must be > 0\n    currency: \"USD\",       // Required: 3-letter ISO code\n    entryType: \"Ecom\",\n    intent: {\n      paypal: IntentType.Payout  // Required for payouts\n    },\n    merchantTransactionId: crypto.randomUUID(),\n    merchantTransactionDate: () => new Date().toISOString()\n  },\n  paypalConfig: {          // Required for payout components\n    payoutConfig: {\n      proceedPayoutWithSdk: true,  // or false for merchant-initiated\n      // For returning customers:\n      paypalWallet: {\n        email: \"customer@example.com\",\n        payerId: \"PAYER_ID_XXX\"    // Optional but recommended\n      }\n      // OR for Venmo:\n      // venmoWallet: {\n      //   receiver: \"+14155551234\",\n      //   recipientType: \"Phone\"\n      // }\n    }\n  }\n});\n","lang":"typescript"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"environment-mismatch","__idx":4},"children":["Environment mismatch"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Ensure your environment setting matches your credentials:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["test"]},": Development and testing with sandbox credentials."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["production"]},": Live transactions with production credentials."]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"typescript","header":{"controls":{"copy":{}}},"source":"// For development\nenvironment: \"test\"\n\n// For production\nenvironment: \"production\"\n","lang":"typescript"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"payout-execution-issues","__idx":5},"children":["Payout execution issues"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"sdk-initiated-vs-merchant-initiated","__idx":6},"children":["SDK-initiated vs merchant-initiated"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Understand the difference between payout modes:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"width":"25%","data-label":"Mode"},"children":["Mode "]},{"$$mdtype":"Tag","name":"th","attributes":{"width":"25%","data-label":"proceedPayoutWithSdk"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["proceedPayoutWithSdk"]}," "]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Behaviour"},"children":["Behaviour"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["SDK-initiated"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["SDK executes payout after user approval. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["onPostPayout"]}," is called."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Merchant-initiated"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["SDK collects data only. Your backend must call the payout API."]}]}]}]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"typescript","header":{"controls":{"copy":{}}},"source":"// SDK-initiated: SDK handles everything\npayoutConfig: {\n  proceedPayoutWithSdk: true,\n  paypalWallet: { email: \"customer@example.com\" }\n}\n\n// Merchant-initiated: You control payout execution\npayoutConfig: {\n  proceedPayoutWithSdk: false,\n  paypalWallet: { email: \"customer@example.com\" }\n}\n","lang":"typescript"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"approval-callback-not-working","__idx":7},"children":["Approval callback not working"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["onPrePayoutSubmit"]}," isn't being called or payout proceeds without approval:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"typescript","header":{"controls":{"copy":{}}},"source":"onPrePayoutSubmit: async () => {\n  console.log(\"onPrePayoutSubmit called\");  // Debug log\n  \n  // Show confirmation dialog\n  const approved = await showConfirmationDialog();\n  \n  console.log(\"User approved:\", approved);  // Debug log\n  \n  // Must return an object with isApproved\n  return { \n    isApproved: approved,\n    note: \"Optional note\"\n  };\n}\n","lang":"typescript"},"children":[]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Always return an object with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["isApproved"]}," from ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["onPrePayoutSubmit"]},". Returning ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["undefined"]}," or not returning anything may cause unexpected behaviour."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"receiver-component-issues","__idx":8},"children":["Receiver component issues"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"paypal-email-not-displaying","__idx":9},"children":["PayPal email not displaying"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If the PayPal receiver component shows no email:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Verify ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["paypalConfig.payoutConfig.paypalWallet.email"]}," is provided."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Check that the email value is a non-empty string."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Ensure the component is mounted after SDK initialisation completes."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"venmo-receiver-type-mismatch","__idx":10},"children":["Venmo receiver type mismatch"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Ensure the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["recipientType"]}," matches the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["receiver"]}," format:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Receiver format"},"children":["Receiver format"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required recipientType"},"children":["Required ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["recipientType"]}]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["user@example.com"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"Email\""]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["+14155551234"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"Phone\""]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["@username"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"UserHandle\""]}]}]}]}]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"typescript","header":{"controls":{"copy":{}}},"source":"// Email example\nvenmoWallet: {\n  receiver: \"user@example.com\",\n  recipientType: \"Email\"\n}\n\n// Phone example\nvenmoWallet: {\n  receiver: \"14155551234\",  // Numbers only\n  recipientType: \"Phone\"\n}\n\n// Handle example\nvenmoWallet: {\n  receiver: \"@john-doe\",\n  recipientType: \"UserHandle\"\n}\n","lang":"typescript"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"debugging-tips","__idx":11},"children":["Debugging tips"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"enable-console-logging","__idx":12},"children":["Enable console logging"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Add logging to track the payout flow:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"typescript","header":{"controls":{"copy":{}}},"source":"const payoutConfig = {\n  onClick: (event) => {\n    console.log(\"[Payout] Button clicked\");\n  },\n  \n  onPrePayoutSubmit: async () => {\n    console.log(\"[Payout] Pre-submit validation\");\n    return { isApproved: true };\n  },\n  \n  onPostPayout: (result) => {\n    console.log(\"[Payout] Success:\", result);\n  },\n  \n  onError: (error) => {\n    console.error(\"[Payout] Error:\", error.ErrorCode, error.message);\n  }\n};\n","lang":"typescript"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"verify-session-data","__idx":13},"children":["Verify session data"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Ensure session data is valid and not expired:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"typescript","header":{"controls":{"copy":{}}},"source":"async function initializePayoutSdk() {\n  const sessionData = await getSessionDataFromBackend();\n  \n  // Debug: Log session data\n  console.log(\"Session data:\", {\n    sessionId: sessionData.sessionId,\n    expiry: sessionData.sessionExpiry,\n    hasHmacKey: !!sessionData.hmacKey,\n    hasEncryptionKey: !!sessionData.encryptionKey\n  });\n  \n  // Check if session is expired\n  if (new Date(sessionData.sessionExpiry) < new Date()) {\n    console.error(\"Session has expired!\");\n    // Request a new session\n    return;\n  }\n  \n  // Proceed with SDK initialisation\n  const sdk = PxpCheckout.initialize({\n    session: sessionData,\n    // ... rest of config\n  });\n}\n","lang":"typescript"},"children":[]}]},"headings":[{"value":"Troubleshooting","id":"troubleshooting","depth":1},{"value":"Common issues","id":"common-issues","depth":2},{"value":"SDK initialisation issues","id":"sdk-initialisation-issues","depth":2},{"value":"Missing or invalid configuration","id":"missing-or-invalid-configuration","depth":3},{"value":"Environment mismatch","id":"environment-mismatch","depth":3},{"value":"Payout execution issues","id":"payout-execution-issues","depth":2},{"value":"SDK-initiated vs merchant-initiated","id":"sdk-initiated-vs-merchant-initiated","depth":3},{"value":"Approval callback not working","id":"approval-callback-not-working","depth":3},{"value":"Receiver component issues","id":"receiver-component-issues","depth":2},{"value":"PayPal email not displaying","id":"paypal-email-not-displaying","depth":3},{"value":"Venmo receiver type mismatch","id":"venmo-receiver-type-mismatch","depth":3},{"value":"Debugging tips","id":"debugging-tips","depth":2},{"value":"Enable console logging","id":"enable-console-logging","depth":3},{"value":"Verify session data","id":"verify-session-data","depth":3}],"frontmatter":{"seo":{"title":"Troubleshooting"}},"lastModified":"2026-06-12T11:56:36.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/guides/checkout/components/web/paypal/payouts/troubleshooting","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}