Información de una Compra
Obtiene el detalle de una compra. Una compra está compuesta por hasta siete estructuras:
- compra: la compra en sí, con información del cliente e importe total
- compra detalle: los ítems comprados (pautas o productos) y los precios de cada uno
- pago: pago realizado para cancelar la compra. Una compra puede tener varios pagos asociados. Por ejemplo, un usuario puede elegir pagar con tarjeta de crédito, su tarjeta es rechazada y luego elige pagar por depósito bancario. En este caso, la misma compra tiene 2 pagos asociados. Todos los pagos deben ser por el importe total, y solo se permite realizar un nuevo pago si ninguno de los anteriores fue aceptado. En otras palabras, se evita que el usuario pague dos veces la misma compra.
- pago – response: respuesta de la pasarela de pagos, conteniendo el estado de la respuesta (aceptado/rechazado/etc) Un mismo pago puede recibir varias respuestas. Por ejemplo, PayPal envía una respuesta sincrónica cuando redirecciona al usuario hacia e-planning, y pocos segundos más tarde envía una respuesta asincrónica, directamente desde los servidores de PayPal, para confirmar la compra. También puede ocurrir que si el usuario intenta con varias tarjetas de crédito, la pasarela envíe una respuesta por cada intento.
- pago – response - detalle: variables adicionales enviadas por la pasarela de pagos. Son particulares de cada pasarela y pueden incluir por ejemplo el modo de pago o el código de autorización.
- anunciante: si la compra fue realizada por un anunciante, se indican aquí los datos del mismo. Si no, se indica el parámetro siguiente:
- agencia: se indican los datos de la agencia que realizó la compra.
Respecto a anunciante y agencia, sólo se indica uno de los dos, y siempre se indica uno. Además, en caso que este disponible, se indica el domicilio de la agencia o anunciante.
Respecto a los estados, tanto la compra como el pago o pago-response tienen todos un atributo estado. La lógica es la siguiente: la compra se crea en estado pendiente. Cuando el usuario elige el modo de pago, se crea también el pago en estado pendiente. Cuando llega una respuesta, si la misma es positiva (compra aprobada o confirmada), tanto la respuesta como el pago se setean en aprobada o confirmada y la compra se setea en aprobada. Si la respuesta por otra parte es negativa (rechazada), el pago se setea en rechazado y la compra continua en estado pendiente, ya que se puede realizar un nuevo pago en el futuro. Si después de cierto tiempo la compra continúa pendiente, se pasa a estado anulada.
URL: /admin/adnet/pub/admin/compras.html?op=vd&o=xml
Parámetros obligatorios:
- compra_id: el identificador de la compra, que se puede obtener del listado de compras
Respuesta:
Contiene un objeto <compra>. El identificador se especifica mediante el atributo compra_id y los datos presentados son los siguientes:
- moneda_id: moneda de la compra – ver valores posibles en anexo de monedas
- importe: importe total de la compra
- fecha_alta: fecha de creación
- estado: ver anexo Estados de compras
- usuario_id: identificador del usuario del anunciante que realizó la compra
- anunciante_id: identificador del anunciante que realizó la compra
- detalles: lista de objetos compra - detalle, cada uno con los siguientes atributos:
- importe: importe del ítem
- iva: iva del ítem
- moneda_id: identificador de la moneda utilizada
- Si se trata de una pauta:
- pauta_id: identificador de la pauta comprada
- packaventa_id: pack seleccionado por el usuario
- Si se trata de un producto:
- dsmproductoconf_id: identificador del producto comprado. Se incluye además toda la información del producto según se detalla en “Información de un producto”
- Si se trata de un combo:
- dsmcomboconf_id: identificador del combo comprado. Se incluye además toda la información del combo según se detalla en “Información de un combo”.
- pagos: listado de objetos pago, cada uno con los siguientes atributos:
- estado: estado del pago – ver Anexo Estados de pagos
- pago_id: identificador del pago
- sistema_pago_id: identificador de la pasarela de pagos utilizada – ver Anexo Pasarelas de pagos
- fecha_alta: fecha en que se comenzó el pago. Es la fecha en que el usuario eligió pagar y fue redirigido a la pasarela de pagos.
- responses: listado de objetos response, cada uno con los siguientes atributos:
- pago_response_id: identificador
- client_ip: IP del usuario o del servidor de la pasarela de pagos desde la cual se recibió la respuesta
- estado de la respuesta: ver Anexo Estados de Pagos.
- tipo: indica si la respuesta fue sincrónica (s), es decir, que vino del usuario, o asincrónica (a), que vino del servidor de la pasarela de pagos.
- detalles: atributos enviados por la pasarela de pagos en su respuesta. Son particulares de cada pasarela de pagos. Cada atributo consiste en un objeto detalle con los siguientes campos:
- clave: nombre del atributo
- valor: valor del atributo
- anunciante: información del anunciante
- agencia_id: identificador de la agencia asociada al anunciante (opcional)
- industria_id: código de industria
- nombre: nombre del anunciante
- observaciones
- custom_id: identificador personalizado
- razon_social: razón social
- url: dirección de la página web
- tipo_persona: 0 para persona física, 1 para persona jurídica
- tax_id: identificador tributario (ej: VAT, NIT, RUT u otros)
- tax_status_id: tipo de contribuyente – ver valores posibles en Anexo Tipo de Contribuyente
- Los siguiente parámetros se incluyen dentro del anunciante provisoriamente, pero serán removidos en versiones siguientes:
- cargo: cargo del usuario
- fecha_nacimiento
- nro_documento: número de documento
- tipodoc_id: tipo de documento (ver Anexo Tipo de Documento)
- agencia: información de la agencia
- nombre: nombre del anunciante
- observaciones
- custom_id: identificador personalizado
- url: dirección de la página web
- domicilio: información de un domicilio (de anunciante o agencia)
- direccion: calle y número
- ciudad
- cp: código postal (opcional)
- region: estado, región o departamento
- país
Ejemplo de respuesta
<compra anunciante_id='15981' agencia_id=”” compra_id='264' estado='3' fecha_alta='0000-00-00 00:00:00' importe='200.0000' moneda_id='1' usuario_id='1765'> <detalles> <detalle importe='200.0000' iva='0.0000' moneda_id='1' packventa_id='13' pauta_id='11642'/> </detalles> <anunciante agencia_id=”” cargo=”” custom_id=”” fecha_nacimiento=”” industria_id=”” nombre=”Test” nro_documento=”” observaciones=”” razon_social=”Test SA” tax_id=”” tax_status_id=”” tipo_persona=”0” tipodoc=”” url=”http://www.test.com/”> <domicilio ciudad=”Lanus” cp=”4324” direccion=”Avda Hip Yrigoyen 443” pais=”Argentina” region=”Buenos Aires”/> </anunciante> <pagos> <pago estado='1' fecha_alta='2009-05-11 14:58:26' pago_id='281' sistema_pago_id='6'/> <pago estado='1' fecha_alta='2009-05-11 15:10:11' pago_id='282' sistema_pago_id='6'/> <pago estado='3' fecha_alta='2009-05-11 15:21:37' pago_id='283' sistema_pago_id='6'> <responses> <response client_ip='6476' estado='3' fecha='2009-05-11 15:22:05' pago_response_id='75' tipo='a'> <detalles> <detalle clave='a 2' valor='' /> <detalle clave='business' valor='paypal_1203160933_biz@caraytech.com' /> <detalle clave='charset' valor='windows-1252' /> <detalle clave='first_name' valor='Test' /> <detalle clave='item_name1' valor='paypal' /> <detalle clave='item_number1' valor='42e755e4c8c4d11460b97bcdb722f97f3bc4a56f9112be14' /> <detalle clave='last_name' valor='User' /> <detalle clave='mc_currency' valor='USD' /> <detalle clave='mc_fee' valor='0.45' /> <detalle clave='mc_gross' valor='5.26' /> <detalle clave='mc_gross_1' valor='5.26' /> <detalle clave='mc_handling' valor='0.00' /> <detalle clave='mc_handling1' valor='0.00' /> <detalle clave='mc_shipping' valor='0.00' /> <detalle clave='mc_shipping1' valor='0.00' /> <detalle clave='notify_version' valor='2.8' /> <detalle clave='num_cart_items' valor='1' /> <detalle clave='o' valor='html' /> <detalle clave='option_name1_1' valor='924c6c8a090558e4881fbc0b892ee22b7aae513d4e886aa9' /> <detalle clave='option_selection1_1' valor='' /> <detalle clave='order_id' valor='42e755e4c8c4d11460b97bcdb722f97f3bc4a56f9112be14' /> <detalle clave='payer_email' valor='paypal_1203161213_per@caraytech.com' /> <detalle clave='payer_id' valor='Z53HD4PAK5T2C' /> <detalle clave='payer_status' valor='verified' /> <detalle clave='payment_date' valor='12:02:19 Jun 18, 2009 PDT' /> <detalle clave='payment_fee' valor='0.45' /> <detalle clave='payment_gross' valor='5.26' /> <detalle clave='payment_status' valor='Completed' /> <detalle clave='payment_type' valor='instant' /> <detalle clave='protection_eligibility' valor='Ineligible' /> <detalle clave='quantity1' valor='1' /> <detalle clave='receiver_email' valor='paypal_1203160933_biz@caraytech.com' /> <detalle clave='receiver_id' valor='N9DX3KG4TZWCA' /> <detalle clave='residence_country' valor='US' /> <detalle clave='tax' valor='0.00' /> <detalle clave='tax1' valor='0.00' /> <detalle clave='test_ipn' valor='1' /> <detalle clave='transaction_subject' valor='Shopping Cart' /> <detalle clave='txn_id' valor='5KA8878298448953W' /> <detalle clave='txn_type' valor='cart' /> <detalle clave='verify_sign' valor='AzdrjT9lkqchJ-IVRZ9LrAPFO6OiACo7QyLH6P.XB7qraMV9i4O1Y9Tz' /> </detalles> </response> </responses> </pago> </pagos> </compra> |