API de alimentación
Instrucciones para la integración técnica con los sistemas LOVAT
Términos y abreviaturas
API – Interfaz de Programación de Aplicaciones. Un conjunto de llamadas proporcionadas por el sistema para la integración con productos de software externos.
Comerciante – el propietario de una tienda en línea.
Cliente – una persona que paga por bienes o servicios.
Transacción – transferencia de fondos por bienes o servicios recibidos por el cliente del comerciante.
Token – una cadena secreta utilizada por el sistema para identificar al comerciante y el sitio web a través del cual se registra la transacción.
Descripción de la API
Método SEND.
Descripción del método.
El método SEND implementa la recepción de datos sobre la transacción, teniendo en cuenta el procesamiento y cálculo del IVA y los cargos del sistema.
URL de referencia
El método está disponible en la siguiente URL:
https://merchant.vatcompliance.co/api/1/ send/{access_token}?if_digital={true/false}&if_vat_calculate={true/false}
Opciones de llamada
Los parámetros de llamada se dividen en dos tipos:
- Parámetros de ruta (token)
- Parámetros de consulta (datos de la transacción)
El token se genera en la cuenta interna del comerciante en la primera etapa de agregar el sitio web. Puedes obtenerlo de tu gestor o encontrarlo en la sección Tienda – Configuración.
Los parámetros de la solicitud son generados por el comerciante y enviados al servidor utilizando el método POST en el formato / x-www-form-urlencoded o application / json
Servicios Digitales
Parámetro | Tipo/Ejemplo | Descripción del ejemplo | Validación |
transaction_id | Cadena/ 555-yyy | ID de la transacción | Máximo 255 caracteres. No puede estar vacío. |
transaction_datetime | FechaHora / 2017-01-09T08:27:22 +00:00 | Fecha y hora de la transacción según ISO 8601 GMT | No puede estar vacío. |
transaction_sum | Cadena / 25 | Monto de la transacción | Máximo 45 caracteres. No puede estar vacío. |
customer_ip | Cadena / 127.0.0.1 | Dirección IP del cliente | Máximo 45 caracteres. |
currency | Cadena / “usd”, “eur”, “rub”, “gbp” | Moneda de la transacción | Máximo 3 caracteres. No puede estar vacío. |
customer_phone_number | Cadena / “+7 AAA BBB BB BB” | Número de teléfono del cliente | Máximo 100 caracteres. |
arrival_country | Cadena / “GBR” | Todos los países se especifican como cadenas según ISO 3166-1 alpha-3 | Máximo 3 caracteres. |
arrival_city | Cadena / “London” | Ciudad de llegada | Máximo 255 caracteres. |
arrival_address_line | Cadena / “Peckham Road” | Línea de dirección de llegada | Máximo 255 caracteres. |
transaction_status |
Cadena / “Success”, “Charge back”, “refund”, “Movement own goods” |
Estado de la transacción | No puede estar vacío. |
service_code | Cadena / “1” |
Código del tipo de servicio del comerciante. Si el comerciante no envía datos sobre el tipo de servicio proporcionado, la transacción se asigna al tipo principal nominal del servicio del comerciante especificado durante el registro.
|
Máximo 255 caracteres. No puede estar vacío. |
bank_card_number | Cadena / “1234-****-****-****” | Número de tarjeta bancaria del comprador | Máximo 19 caracteres. |
payment_operator | Cadena / “payonline” paypal” | Operador de pago | Máximo 45 caracteres. No puede estar vacío. |
payment_method_country | Cadena / “USA” | Opción de pago por país. Todos los países se especifican como cadenas según ISO 3166-1 alpha-3 | Máximo 3 caracteres. No puede estar vacío. |
billing_country | Cadena / “USA” | País de facturación (dirección del propietario del pago). Todos los países se especifican como cadenas según ISO 3166-1 alpha-3 | Máximo 3 caracteres. No puede estar vacío. |
billing_address | Cadena / “111 First Street,Saratoga, CA 95070, US” | Dirección de facturación (dirección del propietario del pago) | Máximo 255 caracteres. No puede estar vacío. |
Código de respuesta del servidor
La respuesta a la consulta utiliza el código HTTP básico
Código | Explicación | Contenido de la respuesta |
200 OK | Solicitud procesada | |
400 BadRequest | Solicitud no válida | { error : “Problema con los datos” } |
401 Unauthorized | Acceso no autorizado | { error : “El token no es válido.” } |
Ejemplo de consulta para servicios digitales:
Ejemplo de solicitud desde la consola
curl -v POST 'https://merchant.vatcompliance.co/api/1/ send/5aae918d97964ff88df64b059c2cc0f8?if_digital=false&if_vat_calculate=true' --header "Content-Type: application/json" -d '{ "transaction_id": "ttt4565-85546", "transaction_datetime": "2017-01-09T08:27:22 +00:00", "transaction_sum": 25.99, "customer_ip": "127.0.0.1", "customer_phone_number": "+7 677 ** * **", }'
Bienes
Parámetro | Tipo/Ejemplo | Descripción del ejemplo | Validación |
transaction_id | Cadena/ 555-yyy | ID de la transacción | Máximo 255 caracteres. No puede estar vacío. |
transaction_datetime | FechaHora / 2017-01-09T08:27:22 +00:00 | Fecha y hora de la transacción según ISO 8601 GMT | No puede estar vacío. |
transaction_sum | Cadena / 25 | Monto de la transacción | Máximo 45 caracteres. No puede estar vacío. |
currency |
Cadena / “GBP”, “EUR”, “RUB” |
Todas las monedas se especifican como cadenas según ISO 4217 | Máximo 3 caracteres. No puede estar vacío. |
arrival_country | Cadena / “GBR” | Todos los países se especifican como cadenas según ISO 3166-1 alpha-3 | Máximo 3 caracteres. |
arrival_city | Cadena / “London” | Ciudad de llegada | Máximo 255 caracteres. |
arrival_address_line | Cadena / “Peckham Road” | Línea de dirección de llegada | Máximo 255 caracteres. |
transaction_status |
Cadena / “Success”, “Charge back”, “refund”, “Movement own goods” |
Estado de la transacción | No puede estar vacío. |
good_code | Cadena / “62160000” | Código de un bien según el sistema de codificación de ocho dígitos de la UE, La Nomenclatura Combinada (CN) | Máximo 8 caracteres. |
vat_percent | Flotante / 20.00 | Porcentaje de IVA | Máximo 8 caracteres. |
vat | Flotante / 28.73 | Monto del IVA | Flotante |
departure_country | Cadena / “AUS” | Opción de pago por país. Todos los países se especifican como cadenas según ISO 3166-1 alpha-3 | Máximo 3 caracteres. No puede estar vacío. |
taxable_jurisdiction | Cadena / “GBR” | Opción de pago por país. Todos los países se especifican como cadenas según ISO 3166-1 alpha-3 | Máximo 3 caracteres. |
buyer_vat_number | Cadena / “UK123123123” | Número de IVA del comprador (UE) | Máximo 255 caracteres. |
Ejemplo de consulta para bienes:
Ejemplo de solicitud desde la consola
curl -v POST https://merchant.vatcompliance.co/api/1/send/5aae918d97964ff88df64b059c2cc0f8?if_digital=false&if_vat_calculate=false --header "Content-Type: application/json" -d '{ "transaction_id": "ttt4565-85546", "transaction_datetime": "2017-01-09T08:27:22 +00:00", "transaction_sum": 158.04, "currency": "GBP", "arrival_country": "GBR", "arrival_city": "London", "arrival_address_line": "Peckham Road", "transaction_status": "Success", "good_code": "62160000", "vat_percent": 20.00, "vat": 28.73, "departure_country": "AUS", }'
Lista de Códigos de Servicio
contenido audiovisual | 1 |
transmisión en vivo | 2 |
servicios telefónicos | 3 |
servicios de telefonía por internet | 4 |
servicios de gestión de llamadas | 5 |
servicios de buscapersonas | 6 |
acceso a internet | 7 |
imágenes | 8 |
música | 9 |
juegos | 10 |
periódicos electrónicos | 11 |
alojamiento web | 12 |
mantenimiento remoto de programas | 13 |
espacios publicitarios en un sitio web | 14 |
libros electrónicos | 15 |
licencias | 16 |
citas | 17 |
educación a distancia | 18 |
juegos de azar | 19 |
suministro de bienes | 20 |
otros servicios digitales | 21 |