--- title: "Receiving Payment from Flex Pay" slug: "receiving-payment-from-uplift" updated: 2026-05-22T16:19:21Z published: 2026-05-22T16:19:21Z canonical: "developer.upgrade.com/receiving-payment-from-uplift" --- > ## Documentation Index > Fetch the complete documentation index at: https://developer.upgrade.com/llms.txt > Use this file to discover all available pages before exploring further. # Receiving Payment from Flex Pay ### Receiving Payment from Flex Pay One of the most important callback method is the `didCreateVirtualCard`. The `ULPMVirtualCard`, which is received in this call, is a virtual payment card that will be used to pay for the booking. ``` override fun virtualCardReceived(virtualCard: ULPMVirtualCard) { // Pay the current order in your system with the received virtual card } ``` #### Virtual Card Schema The customer’s contact information will be used for the virtual payment card. The following indicates the expected property types of the virtualCard object. For more information please check the `ULPMVirtualCard` class. ``` data class ULPMVirtualCard( val ccv: String?, val cardNumber: String?, val expirationMonth: Int?, val expirationYear: Int?, val nameOnCard: String?, val cardType: String?, val contact: ULContact?, val cardToken: String?, val cardId: String? ) ```