About this project
it-programming / web-development
Open
Precisamos desenvolver a integração com Amazon Marketplace seguindo a seguinte interface:
public Authentication configAuthentication(Authentication authentication) throws BusinessException, AuthenticationException;
public ProductOnChannel insertProduct(Authentication authentication, ProductOnChannel productOnChannel) throws BusinessException;
public ProductOnChannel updateProduct(Authentication authentication, ProductOnChannel productOnChannel) throws BusinessException;
public ProductOnChannel updateStockAndPrice(Authentication authentication, String channelId, Long variationId, BigDecimal price, BigDecimal promotionalPrice, Integer availableQuantity, Integer crossdocking) throws BusinessException;
public String getTracking(Authentication authentication, String orderNumber) throws BusinessException;
public Boolean isOrderCancelled(Order order) throws BusinessException;
public Boolean isOrderPaid(Order order) throws BusinessException;
public Boolean isOrderShipmentPending(Order order) throws BusinessException;
public BigDecimal getSalesFee(Authentication authentication, BigDecimal price, Integer quantity, String listingTypeId) throws BusinessException;
public BigDecimal getPercentageCommission(Authentication authentication, String advertisement) throws BusinessException;
public Order getOrder(Authentication authentication, String completeOrderNumber) throws BusinessException;
public List<Order> getOrders(Authentication authentication) throws BusinessException;
public void sendOrder(Authentication authentication,
String channel,
String completeOrderNumber,
String invoiceKey,
String invoiceNumber,
Integer invoiceLine,
String invoicedIssueDate,
String urlXml) throws BusinessException;
public void sendOrder(Authentication authentication,
String channel,
String completeOrderNumber,
String invoiceKey,
String invoiceNumber,
Integer invoiceLine,
String invoicedIssueDate,
String trackingKey,
String method,
String carrier,
String url) throws BusinessException;
public void sendOrderDelivered(Authentication authentication, String channel, String completeOrderNumber, String trackingKey) throws BusinessException;
public ProductOnChannel pauseItem(Authentication authentication, String channelId) throws BusinessException;
public ProductOnChannel activeItem(Authentication authentication, String channelId) throws BusinessException;
public ProductOnChannel getProduct(Authentication authentication, String channelId) throws BusinessException;
public BigDecimal getPriceFreeShipping(Authentication authentication, String channelId) throws BusinessException;
public String createUrlShipmentLabel(Authentication authentication, String orderId, String printerType) throws BusinessException;
public Shipping getShipping(Authentication authentication, String shippingId) throws BusinessException;
public List<ProductOnChannel> getProducts(Authentication authentication) throws BusinessException;
Observações
1- Estes métodos retornam sempre um objeto padrão, ou seja, não poderá desenvolver os retornos de maneira diferente.
2- Todas as conversões de objetos precisam ser traduzidas de forma padrão conforme exemplo que iremos fornecer, mas basicamente funciona da seguinte maneira:
a- Ao chamar um dos métodos citados acima, é passado por parâmetro um objeto do tipo API, onde deve ser traduzido para o padrão de objeto do respectivo marketplace (Exemplo: TranslateApiProductToAmazonProduct).
Após o marketplace retornar a resposta de criação do respectivo método, ele deverá ser traduzido de forma inversa, ou seja, do json Amazon para o objeto API.
3- O projeto será considerado como entregue assim que todos os métodos forem apresentados e devidamente funcionando.
4- Depois disso conectaremos este módulo ao nosso core do produto, para que sejam feitos testes em produção.
5- Após realizar todos os testes do módulo e produção o projeto será considerado como entregue.
Category IT & Programming
Subcategory Web development
What is the scope of the project? Medium-sized change
Is this a project or a position? Project
I currently have I have specifications
Required availability As needed
API Integrations Other (Other APIs)
Roles needed Developer
Delivery term: Not specified
Skills needed