{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-guides/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["sub-heading","br","details","admonition"]},"type":"markdown"},"seo":{"title":"PayPal receiver component","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":"paypal-receiver-component","__idx":0},"children":["PayPal receiver component"]},{"$$mdtype":"Tag","name":"SubHeading","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Display stored PayPal account details to customers in your Android app."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"overview","__idx":1},"children":["Overview"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The PayPal receiver component is a read-only display component that shows the customer's stored PayPal email address. It automatically retrieves the email from the SDK configuration's payout wallet data and provides optional masking functionality for privacy."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"when-to-use","__idx":2},"children":["When to use"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use the PayPal receiver component when:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["You're implementing the withdrawal flow for returning customers."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["You have the customer's PayPal email and payer ID stored."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["You want to display which PayPal account will receive the payout."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["You want to provide privacy with email masking options."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"component-creation","__idx":3},"children":["Component creation"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Create the receiver component using the SDK's factory method:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"kotlin","header":{"controls":{"copy":{}}},"source":"import com.pxp.checkout.components.paypalpayoutreceiver.PaypalPayoutReceiverComponentConfig\nimport com.pxp.checkout.types.ComponentType\n\nval receiverComponent = pxpCheckout.createComponent(\n    type = ComponentType.PAYPAL_PAYOUT_RECEIVER,\n    config = PaypalPayoutReceiverComponentConfig(\n        label = \"PayPal Account\",\n        showMaskToggle = true,\n        applyMask = true\n    )\n)\n","lang":"kotlin"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"configuration-options","__idx":4},"children":["Configuration options"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"paypalpayoutreceivercomponentconfig","__idx":5},"children":["PaypalPayoutReceiverComponentConfig"]},{"$$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":"Property"},"children":["Property"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["label"]},{"$$mdtype":"Tag","name":"Break","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Details","attributes":{},"children":["String"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The label displayed above the email. Customise it to match your app's terminology. Defaults to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"Receiver\""]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["showMaskToggle"]},{"$$mdtype":"Tag","name":"Break","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Details","attributes":{},"children":["Boolean"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Whether to show a toggle button to mask/unmask the email. Displays an eye icon button. Allows customers to show or hide their full email. Useful for privacy in public settings. Defaults to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["applyMask"]},{"$$mdtype":"Tag","name":"Break","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Details","attributes":{},"children":["Boolean"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Whether to start with the email masked. When ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]},", email displays as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["c***@example.com"]},". When ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},", email displays as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customer@example.com"]},". Only applies if ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["showMaskToggle"]}," is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]},". Defaults to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["placeholder"]},{"$$mdtype":"Tag","name":"Break","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Details","attributes":{},"children":["String"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The placeholder text. Not used in read-only display mode. Included for configuration completeness. Defaults to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"\""]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["visibilityOnIcon"]},{"$$mdtype":"Tag","name":"Break","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Details","attributes":{},"children":["Int"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The resource ID for the visibility on icon, which is shown when the email is visible. Used when ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["showMaskToggle"]}," is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]},". Defaults to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["R.drawable.ic_visibility"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["visibilityOffIcon"]},{"$$mdtype":"Tag","name":"Break","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Details","attributes":{},"children":["Int"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The rsource ID for the visibility off icon, which is shown when the email is masked. Used when ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["showMaskToggle"]}," is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]},". Defaults to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["R.drawable.ic_visibility_off"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["validationMessages"]},{"$$mdtype":"Tag","name":"Break","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Details","attributes":{},"children":["PaypalPayoutReceiverValidationMessages"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Custom validation messages. Customise the error messages for an invalid email format. Defaults to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PaypalPayoutReceiverValidationMessages()"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["style"]},{"$$mdtype":"Tag","name":"Break","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Details","attributes":{},"children":["PaypalPayoutReceiverStyle?"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Custom styling configuration. Customise colours, typography, and spacing. Uses default PayPal styling if not provided. Defaults to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]},"."]}]}]}]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The PayPal email is automatically retrieved from ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PxpSdkConfig.paypalConfig.payout.paypalWallet.email"]},". You don't need to pass the email to the component."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"paypalpayoutreceivervalidationmessages","__idx":6},"children":["PaypalPayoutReceiverValidationMessages"]},{"$$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":"Property"},"children":["Property"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["invalidEmailFormat"]},{"$$mdtype":"Tag","name":"Break","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Details","attributes":{},"children":["String"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Error message for invalid email format. Defaults to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"Please enter a valid email address\""]},"."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"rendering-the-component","__idx":7},"children":["Rendering the component"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Render the component using Jetpack Compose:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"kotlin","header":{"controls":{"copy":{}}},"source":"@Composable\nfun PayoutScreen() {\n    val receiverComponent = remember {\n        pxpCheckout.createComponent(\n            type = ComponentType.PAYPAL_PAYOUT_RECEIVER,\n            config = PaypalPayoutReceiverComponentConfig(\n                label = \"Sending to\",\n                showMaskToggle = true,\n                applyMask = true\n            )\n        )\n    }\n    \n    Column(\n        modifier = Modifier\n            .fillMaxWidth()\n            .padding(16.dp)\n    ) {\n        pxpCheckout.buildComponentView(\n            component = receiverComponent,\n            modifier = Modifier.fillMaxWidth()\n        )\n    }\n}\n","lang":"kotlin"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"complete-example","__idx":8},"children":["Complete example"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Here's a complete example showing the receiver component in a withdrawal flow:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"kotlin","header":{"controls":{"copy":{}}},"source":"import android.os.Bundle\nimport androidx.activity.ComponentActivity\nimport androidx.activity.compose.setContent\nimport androidx.compose.foundation.layout.*\nimport androidx.compose.material3.*\nimport androidx.compose.runtime.*\nimport androidx.compose.ui.Modifier\nimport androidx.compose.ui.unit.dp\nimport com.pxp.checkout.PxpCheckout\nimport com.pxp.checkout.components.payoutamount.PayoutAmountComponentConfig\nimport com.pxp.checkout.components.paypalpayoutreceiver.PaypalPayoutReceiverComponentConfig\nimport com.pxp.checkout.components.payoutsubmission.PayoutSubmissionComponentConfig\nimport com.pxp.checkout.models.*\nimport com.pxp.checkout.models.payout.PrePayoutSubmitResult\nimport com.pxp.checkout.types.ComponentType\nimport java.util.UUID\n\nclass PayPalReceiverActivity : ComponentActivity() {\n    \n    private lateinit var pxpCheckout: PxpCheckout\n    \n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        \n        // Get stored customer wallet\n        val customerWallet = getStoredCustomerWallet()\n        \n        // Initialise SDK with stored wallet details\n        pxpCheckout = PxpCheckout.builder()\n            .withConfig(\n                PxpSdkConfig(\n                    environment = Environment.TEST,\n                    session = sessionData,\n                    ownerId = \"Unity\",\n                    ownerType = \"MerchantGroup\",\n                    clientId = \"your-client-id\",\n                    transactionData = TransactionData(\n                        amount = 150.0,\n                        currency = \"USD\",\n                        merchant = \"your-merchant-id\",\n                        entryType = EntryType.Ecom,\n                        intent = TransactionIntentData(paypal = IntentType.Payout),\n                        merchantTransactionId = UUID.randomUUID().toString(),\n                        merchantTransactionDate = { System.currentTimeMillis() }\n                    ),\n                    paypalConfig = PaypalConfig(\n                        payout = PayoutConfig(\n                            proceedPayoutWithSdk = true,\n                            paypalWallet = PayPalPayOutWalletConfig(\n                                email = customerWallet.email,  // Retrieved from storage\n                                payerId = customerWallet.payerId\n                            )\n                        )\n                    )\n                )\n            )\n            .withContext(this)\n            .build()\n        \n        setContent {\n            MaterialTheme {\n                WithdrawalScreen()\n            }\n        }\n    }\n    \n    @Composable\n    fun WithdrawalScreen() {\n        // Create components\n        val amountComponent = remember {\n            pxpCheckout.createComponent(\n                type = ComponentType.PAYOUT_AMOUNT,\n                config = PayoutAmountComponentConfig(\n                    label = \"Withdrawal Amount\"\n                )\n            )\n        }\n        \n        val receiverComponent = remember {\n            pxpCheckout.createComponent(\n                type = ComponentType.PAYPAL_PAYOUT_RECEIVER,\n                config = PaypalPayoutReceiverComponentConfig(\n                    label = \"Sending to\",\n                    showMaskToggle = true,\n                    applyMask = true  // Start with masked email for privacy\n                )\n            )\n        }\n        \n        val submitConfig = remember {\n            PayoutSubmissionComponentConfig(\n                recipientWallet = \"Paypal\",\n                onPrePayoutSubmit = {\n                    val confirmed = showConfirmationDialog()\n                    PrePayoutSubmitResult(isApproved = confirmed)\n                },\n                onPostPayout = { result ->\n                    navigateToSuccessScreen(result.merchantTransactionId)\n                }\n            )\n        }\n        \n        val submitComponent = remember {\n            pxpCheckout.createComponent(\n                type = ComponentType.PAYOUT_SUBMISSION,\n                config = submitConfig\n            )\n        }\n        \n        Surface(\n            modifier = Modifier.fillMaxSize(),\n            color = MaterialTheme.colorScheme.background\n        ) {\n            Column(\n                modifier = Modifier\n                    .fillMaxSize()\n                    .padding(16.dp),\n                verticalArrangement = Arrangement.spacedBy(16.dp)\n            ) {\n                Text(\n                    text = \"Withdraw funds\",\n                    style = MaterialTheme.typography.headlineMedium\n                )\n                \n                Text(\n                    text = \"Review your withdrawal details below\",\n                    style = MaterialTheme.typography.bodyMedium,\n                    color = MaterialTheme.colorScheme.onSurfaceVariant\n                )\n                \n                Card(\n                    modifier = Modifier.fillMaxWidth(),\n                    colors = CardDefaults.cardColors(\n                        containerColor = MaterialTheme.colorScheme.surfaceVariant\n                    )\n                ) {\n                    Column(\n                        modifier = Modifier.padding(16.dp),\n                        verticalArrangement = Arrangement.spacedBy(12.dp)\n                    ) {\n                        // Amount\n                        pxpCheckout.buildComponentView(\n                            component = amountComponent,\n                            modifier = Modifier.fillMaxWidth()\n                        )\n                        \n                        Divider()\n                        \n                        // PayPal receiver with masking\n                        pxpCheckout.buildComponentView(\n                            component = receiverComponent,\n                            modifier = Modifier.fillMaxWidth()\n                        )\n                        \n                        Divider()\n                        \n                        // Submit button\n                        pxpCheckout.buildComponentView(\n                            component = submitComponent,\n                            modifier = Modifier.fillMaxWidth()\n                        )\n                    }\n                }\n                \n                TextButton(\n                    onClick = { navigateToChangePayoutMethod() }\n                ) {\n                    Text(\"Use a different PayPal account?\")\n                }\n            }\n        }\n    }\n}\n","lang":"kotlin"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"email-masking","__idx":9},"children":["Email masking"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The receiver component provides built-in email masking for privacy:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"kotlin","header":{"controls":{"copy":{}}},"source":"// Masked email (default)\nPaypalPayoutReceiverComponentConfig(\n    showMaskToggle = true,\n    applyMask = true  // Shows: c***@example.com\n)\n\n// Full email shown\nPaypalPayoutReceiverComponentConfig(\n    showMaskToggle = true,\n    applyMask = false  // Shows: customer@example.com\n)\n\n// No mask toggle (always shows full email)\nPaypalPayoutReceiverComponentConfig(\n    showMaskToggle = false\n    // Always shows: customer@example.com\n)\n","lang":"kotlin"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"styling","__idx":10},"children":["Styling"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Customise the component appearance using the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["style"]}," property:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"kotlin","header":{"controls":{"copy":{}}},"source":"val receiverConfig = PaypalPayoutReceiverComponentConfig(\n    label = \"PayPal Account\",\n    showMaskToggle = true,\n    applyMask = true,\n    style = PaypalPayoutReceiverStyle(\n        // Add custom styling properties\n    )\n)\n","lang":"kotlin"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"best-practices","__idx":11},"children":["Best practices"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"enable-privacy-by-default","__idx":12},"children":["Enable privacy by default"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Start with the email masked for customer privacy:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"kotlin","header":{"controls":{"copy":{}}},"source":"// Good: Privacy-first approach\nPaypalPayoutReceiverComponentConfig(\n    showMaskToggle = true,\n    applyMask = true  // Start masked\n)\n\n// Less ideal: Email exposed by default\nPaypalPayoutReceiverComponentConfig(\n    showMaskToggle = true,\n    applyMask = false  // Start unmasked\n)\n","lang":"kotlin"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"provide-clear-labelling","__idx":13},"children":["Provide clear labelling"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use descriptive labels that indicate the purpose:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"kotlin","header":{"controls":{"copy":{}}},"source":"// Good examples\nPaypalPayoutReceiverComponentConfig(label = \"Sending to\")\nPaypalPayoutReceiverComponentConfig(label = \"PayPal Account\")\nPaypalPayoutReceiverComponentConfig(label = \"Recipient\")\n\n// Avoid vague labels\nPaypalPayoutReceiverComponentConfig(label = \"Email\")  // Too generic\n","lang":"kotlin"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"proper-sdk-initialisation","__idx":14},"children":["Proper SDK initialisation"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Ensure your SDK is initialised with valid PayPal wallet details:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"kotlin","header":{"controls":{"copy":{}}},"source":"// Correct initialisation for withdrawal flow\npaypalConfig = PaypalConfig(\n    payout = PayoutConfig(\n        proceedPayoutWithSdk = true,\n        paypalWallet = PayPalPayOutWalletConfig(\n            email = \"customer@example.com\",  // Required\n            payerId = \"PAYER_ID_XXX\"         // Required for PayPal payouts\n        )\n    )\n)\n","lang":"kotlin"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"common-use-cases","__idx":15},"children":["Common use cases"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"standard-withdrawal-flow","__idx":16},"children":["Standard withdrawal flow"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"kotlin","header":{"controls":{"copy":{}}},"source":"@Composable\nfun StandardWithdrawal() {\n    Column(\n        modifier = Modifier.fillMaxWidth(),\n        verticalArrangement = Arrangement.spacedBy(12.dp)\n    ) {\n        // Amount\n        pxpCheckout.buildComponentView(\n            component = amountComponent,\n            modifier = Modifier.fillMaxWidth()\n        )\n        \n        Divider()\n        \n        // Receiver with masking\n        pxpCheckout.buildComponentView(\n            component = receiverComponent,\n            modifier = Modifier.fillMaxWidth()\n        )\n        \n        Divider()\n        \n        // Submit\n        pxpCheckout.buildComponentView(\n            component = submitComponent,\n            modifier = Modifier.fillMaxWidth()\n        )\n    }\n}\n","lang":"kotlin"},"children":[]}]},"headings":[{"value":"PayPal receiver component","id":"paypal-receiver-component","depth":1},{"value":"Overview","id":"overview","depth":2},{"value":"When to use","id":"when-to-use","depth":2},{"value":"Component creation","id":"component-creation","depth":2},{"value":"Configuration options","id":"configuration-options","depth":2},{"value":"PaypalPayoutReceiverComponentConfig","id":"paypalpayoutreceivercomponentconfig","depth":3},{"value":"PaypalPayoutReceiverValidationMessages","id":"paypalpayoutreceivervalidationmessages","depth":3},{"value":"Rendering the component","id":"rendering-the-component","depth":2},{"value":"Complete example","id":"complete-example","depth":2},{"value":"Email masking","id":"email-masking","depth":2},{"value":"Styling","id":"styling","depth":2},{"value":"Best practices","id":"best-practices","depth":2},{"value":"Enable privacy by default","id":"enable-privacy-by-default","depth":3},{"value":"Provide clear labelling","id":"provide-clear-labelling","depth":3},{"value":"Proper SDK initialisation","id":"proper-sdk-initialisation","depth":3},{"value":"Common use cases","id":"common-use-cases","depth":2},{"value":"Standard withdrawal flow","id":"standard-withdrawal-flow","depth":3}],"frontmatter":{"seo":{"title":"PayPal receiver component"}},"lastModified":"2026-02-26T12:14:32.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/guides/checkout/components/android/paypal/payouts/receiver-component","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}