variable error javascript php jquery stripe-payments payment

javascript - variable - Pago de franjas: Obtención de error como cliente cus_***** no tiene una tarjeta vinculada con ID tok_*****



undefined javascript error (2)

Había establecido "SourceToken" en StripeCustomerCreateOptions Y "SourceTokenOrExistingSourceId" en StripeChargeCreateOptions (SourceToken) para mi StripeCustomer.

Al eliminar la asignación de SourceTokenOrExistingSourceId se resolvió mi problema para mi StripeCharge, ya que el token creaba ID en conflicto.

En el modo de prueba, cuando creo un nuevo cliente e intento el pago, recibí este error.

Cliente cus_7Zz2BCnybIZLGw no tiene una tarjeta vinculada con ID tok_17Kp8GAwLkQPB7OqrrM73VVI

Estoy usando el número de tarjeta: 4242424242424242 exp_month: 12 exp_year 2016

La respuesta de retorno es,

Array ( [charge_status] => [error_info] => Array ( [type] => invalid_request_error [message] => Customer cus_7Zz2BCnybIZLGw does not have a linked card with ID tok_17Kp8GAwLkQPB7OqrrM73VVI. [param] => card [code] => missing ) [message] => Customer cus_7Zz2BCnybIZLGw does not have a linked card with ID tok_17Kp8GAwLkQPB7OqrrM73VVI. )

Los datos de carga de entrada son,

$customer = Stripe_Customer::create(array( ''account_balance'' => 100, ''source'' => $token, ''email'' => strip_tags(trim($email)) ) ); $customer_id = $customer->id; $charge = array( ''card'' => 4242424242424242, ''amount'' => 100, ''currency'' => ''cad'', ''receipt_email'' => [email protected], ''description'' => ''my payment'', ''customer'' => $customer_id );


Hay tres formas diferentes de crear un cargo :

  • con el parámetro source solamente. En este caso, la source debe ser un identificador de token o source (creado por Checkout o Stripe.js ), es decir, una cadena que comienza con tok_ o src_ .

  • sólo con el parámetro customer . En este caso, el customer debe ser un ID de customer , es decir, una cadena que comienza con cus_ . Se cobrará la fuente de pago por defecto del cliente.

  • Con los parámetros tanto del customer como de la source . En este caso, el customer debe ser un ID de cliente como en el caso anterior, pero la source debe ser el ID de una fuente de pago que ya está adjunta al cliente. Las fuentes de pago pueden ser cards (ID comienza con card_ ), cuentas bancarias (ID comienza con ba_ ) o source (ID comienza con src_ ).

En su caso, está pasando un ID de token en el parámetro de source junto con un ID de cliente en el parámetro de customer .

Si se trata de una tarjeta nueva, primero debe usar el token para crear una tarjeta en el cliente y luego crear el cargo con la identificación de la tarjeta. Si la tarjeta ya estaba guardada para este cliente, no necesita volver a recopilar la información de la tarjeta (y, por lo tanto, no necesita crear un token).